mysql建立表的時候,外來鍵刪除時 和更新時的引數區別:
1. restrict(預設) , no action:當刪除父表(則當在父表(即外來鍵的**表)中刪除對應記錄時,首先檢查該記錄是否有對應外來鍵,如果有則不允許刪除。)
2.當取值為cascade時,則當在父表(即外來鍵的**表)中刪除對應記錄時,首先檢查該記錄是否有對應外來鍵,如果有則也刪除外來鍵在子表(即包含外來鍵的表)中的記錄。
3.當取值為set null時,則當在父表(即外來鍵的**表)中刪除對應記錄時,首先檢查該記錄是否有對應外來鍵,如果有則設定子表中該外鍵值為null(不過這就要求該外來鍵允許取null)。
以下鏈結寫的很詳細:
MySQL外來鍵約束 級聯刪除和更新
外來鍵約束 什麼是外來鍵約束 一張表中的某個字段引用另乙個表的主鍵 主表 約束別人 副表 從表 使用別人的資料,被別人約束 建立部門表 create table department id int primary key auto increment,主鍵自增 dep name varchar 20...
mysql外來鍵和外來鍵約束
1.mysql中 鍵 和 索引 的定義相同,所以外來鍵和主鍵一樣也是索引的一種。不同的是mysql會自動為所有表的主鍵進行索引,但是外來鍵字段必須由使用者進行明確的索引。用於外來鍵關係的字段必須在所有的參照表中進行明確地索引 2.如果表a的主關鍵字是表b中的字段,則該字段稱為表b的外來鍵,表a稱為主...
mysql 外來鍵和外來鍵約束
1.外來鍵 如果公共關鍵字在乙個關係中是主關鍵字,那麼這個公共關鍵字被稱為另乙個關係的外來鍵。就是a表的主鍵,被用到了b表中,此時它就成了外來鍵 2.外來鍵約束 如果想要插入或者更新外來鍵的值,資料庫會和引用表中字段的資料進行驗證,如果插入或更改的值不在被引用的表中,則插入失敗 外來鍵的作用就是保證...