MySQL添加外鍵失敗ERROR 1452的解決
今天在學習數據庫添加外鍵的時候,遇到了問題
我先創建了兩個表 orders 和 order_items ,存儲引擎都是InnoDB,
且都有orderid這個屬性(類型完全一樣),
但是我使用命令
[sql]
alter table order_items
add foreign key (orderid) references orders (orderid);
www.2cto.com
添加外鍵的時候 出現了錯誤
[sql]
ERROR 1452 : Cannot add or update a child row: a foreign key constraint fails
最後才發現,原來是我的order_items表中已經存在了數據,且orderid這個屬性和orders中的不對應,因此如果添加外鍵,就會導致錯誤
此時解決的辦法不外乎兩個:
1.刪除數據,再添加外鍵
2.在orders中添加對應的項,再添加外鍵