restrict方式 同no action, 都是立即檢查外來鍵約束
--限制,指的是如果字表引用父表的某個欄位的值,那麼不允許直接刪除父表的該值;
cascade方式 在父表上update/delete記錄時,同步update/delete掉子表的匹配記錄 on delete cascade從mysql3.23.50開始可用;on update cascade從mysql4.0.8開始可用
--級聯,刪除父表的某條記錄,子表中引用該值的記錄會自動被刪除;
no action方式 如果子表中有匹配的記錄,則不允許對父表對應候選鍵進行update/delete操作 這個是ansi sql-92標準,從mysql4.0.8開始支援
--無參照完整性關係,有了也不生效。
set null方式 在父表上update/delete記錄時,將子表上匹配記錄的列設為null 要注意子表的外來鍵列不能為not null on delete set null從mysql3.23.50開始可用;
on update set null從mysql4.0.8開始可用
歡迎點評,共同學習,共同進步
mysql約束與外來鍵 MySQL 外來鍵與約束
外來鍵的建立 建表如下 create table parent id int not null,primary key id type innodb create table child id int,parent id int,foreign key parent id references pa...
MySQL 外來鍵約束
建立測試主表.id 是主鍵.create table test main id int,value varchar 10 primary key id 建立測試子表.create table test sub id int,main id int,value varchar 10 primary k...
MySQL外來鍵約束
innodb型別表有乙個其他儲存引擎不支援的特性 外來鍵約束。當b表的外來鍵關聯到a表的主鍵時 表b是父表a表的子表 如果刪除了a表,那麼b中的外來鍵則仍然關聯著乙個不存在的表的主鍵。而外鍵約束則設定了當約束被破壞時應該應用的的規則,包括防止約束破壞。建立乙個外來鍵約束的語法是 foreign ke...