phpMyAdmin 出現 Cannot delete or update a parent row: a foreign key constraint fails

如果在 phpMyAdmin 出現以下訊息的時候,就是代表有可能 MySQL 在 InnoDB內有設 foreign Key 造成無法更新或刪除資料的狀況。

Cannot delete or update a parent row: a foreign key constraint fails


這個在 MySQL Bugs 裡面也很多人提出過了:

http://bugs.mysql.com/bug.php?id=2535

http://bugs.mysql.com/bug.php?id=3623

如果出現這個狀況,先檢查你的 foreign Key 是不是有必要,只留真的需要的就可以了。

一般程式還是能正常存取,如果只是要暫時用 phpMyAdmin 做簡單的更新,在不更動 foreign Key 最簡單的方法就是先把 table 改為 MyISAM :

ALTER TABLE `xyz` TYPE = MYISAM

改完再改回 InnoDB 囉!

ALTER TABLE `xyz` TYPE = INNODB

1 comments On phpMyAdmin 出現 Cannot delete or update a parent row: a foreign key constraint fails

Leave a reply:

Your email address will not be published.

Site Footer

Sliding Sidebar