1. 程式人生 > >MySQL 外來鍵 froeign key

MySQL 外來鍵 froeign key

  • 外來鍵約束對子表的含義:
    如果在父表中找不到候選鍵,則不允許在子表上進行insert/update

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

  • No Action/RESTRICT:限制,立即檢查外來鍵約束 ,如果子表中有匹配的記錄,則不允許對父表對應候選鍵進行update/delete操作

  • Cascade:級聯操作,從表中的值跟隨主表發生變化。
  • Set Null:在父表上update/delete記錄時,將子表上匹配記錄的列設為null ,要注意子表的外來鍵列不能為not null

新問題

用外來鍵約束的兩個表,如果從表數刪除,主表受不受影響?

  • 事實上不受影響。
  • 這問題真白痴。

參考

轉載