MySQL創建有外鍵的表需要注意的事項
作者:佚名
在MySQL數據庫中,如果創建的表帶有外鍵,那么就有一些問題值得我們注意,下面就讓一起來了解一下。
MySQL創建有外鍵的表,有一些注意事項,下面就為您介紹一些和MySQL創建有外鍵的表相關的問題,供您參考學習之用。
創建以下數據庫表:
- CREATE TABLE `roottb` (
- `id` INT(11) UNSIGNED AUTO_INCREMENT NOT NULL,
- `data` VARCHAR(100) NOT NULL DEFAULT '',
- PRIMARY KEY (`id`)
- ) TYPE=InnoDB;
- CREATE TABLE `subtb` (
- `id` INT(11) UNSIGNED AUTO_INCREMENT NOT NULL,
- `rootid` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `data` VARCHAR(100) NOT NULL DEFAULT '',
- PRIMARY KEY (`id`),
- INDEX (`rootid`),
- FOREIGN KEY (`rootid`) REFERENCES roottb(`id`) ON DELETE CASCADE
- ) TYPE=InnoDB;
MySQL創建有外鍵的表要注意的:
1、只有InnoDB引擎才允許使用外鍵,所以數據庫必須使用InnoDB引擎;
2、外鍵必須建立索引(INDEX),否則出現以下錯誤:
SQL執行錯誤#1005.從數據庫的響應:
Can't create table (errno: 150)。
【編輯推薦】
責任編輯:段燃
來源:
互聯網