我在一個表上有一列contactId
這是一個外鍵,連接到contacts
表的ID。即,我的第二個表中的每一行都可以連接到一個聯繫人。Mysql外鍵難題
但是,有些記錄不必連接到任何聯繫人。在這種情況下,聯繫人Id將爲0.當我嘗試插入這樣的記錄時,出現此錯誤:
Error Number: 1452 Cannot add or update a child row: a foreign key constraint fails
我該怎麼辦?
我在一個表上有一列contactId
這是一個外鍵,連接到contacts
表的ID。即,我的第二個表中的每一行都可以連接到一個聯繫人。Mysql外鍵難題
但是,有些記錄不必連接到任何聯繫人。在這種情況下,聯繫人Id將爲0.當我嘗試插入這樣的記錄時,出現此錯誤:
Error Number: 1452 Cannot add or update a child row: a foreign key constraint fails
我該怎麼辦?
如果列表contactId
對另一個表具有FK的列可以爲空(也可以是),您應該可以將那些沒有任何聯繫人的列設置爲NULL
。外鍵基本上意味着如果該列具有非NULL值,那麼該值必須存在於由外鍵約束引用的表的主鍵中。否則,只需將其設置爲NULL即可。
使用NULL作爲contactId
,因爲行與引用concact無關。
外鍵列可以爲空。