My SQL外來鍵約束

2021-07-05 18:57:21 字數 448 閱讀 4105

外來鍵約束對子表的含義:如果在父表中找不到對應的候選鍵,則不能對子表進行insert/update操作

外來鍵約束對父表的含義:在父表上進行update/delete以更新或刪除在子表中有一條或多條對應匹配行的候選鍵時,父表的行為取決於:在定義子表的外來鍵時指定的on update/on delete子句

action

方式:在對父表進行update/delete操作時,子表匹配的列也對應的進行update/delete操作

set null方式:在對父表進行update/delete操作時,將子表對應匹配的列設定為null,需要注意到子表的列不能設定為not null

no action方式 :如果子表中有匹配的記錄,則不能對父表進行update/delete操作

restrict方式:同no action 都是立即檢查約束關係,若有匹配的記錄,則不能對父表進行update/delete操作

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...