MySQL外鍵設置中的的 Cascade、NO ACTION、Restrict、SET NULL


 1 . cascade方式
在父表上update/delete記錄時,同步update/delete掉子表的匹配記錄 

   2. set null方式
在父表上update/delete記錄時,將子表上匹配記錄的列設為null
要注意子表的外鍵列不能為not null  

   3. No action方式
如果子表中有匹配的記錄,則不允許對父表對應候選鍵進行update/delete操作  

   4. Restrict方式
同no action, 都是立即檢查外鍵約束

   5. Set default方式
父表有變更時,子表將外鍵列設置成一個默認的值 但Innodb不能識別

轉載:http://blog.sina.com.cn/s/blog_91339bff0100ymc2.html

   聯合主鍵的作用

聯合主鍵就是用2個或2個以上的字段組成主鍵。用這個主鍵包含的字段作為主鍵,這個組合在數據表中是唯一,且加了主鍵索引。
可以這么理解,比如,你的訂單表里有很多字段,一般情況只要有個訂單號bill_no做主鍵就可以了,但是,現在要求可能會有補充訂單,使用相同的訂單號,
那么這時單獨使用訂單號就不可以了,因為會有重復。那么你可以再使用個訂單序列號bill_seq來作為區別。把bill_no和bill_seq設成聯合主鍵。即使bill_no相同,bill_seq不同也是可以的。

主鍵和外鍵的區別

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM