0
我最近提出了一些表,以一個新的數據庫。我將這些表的外鍵指向舊數據庫中的表。MySQL的:不能添加一個外鍵
我然後創建引用的表的新版本。我第一次嘗試到修改的FK,使他們將指向新的引用。這沒有用,所以我放棄了所有舊的FK並試圖創造新的FK。第一階段順利完成。第二階段雖然失敗,但每張桌子都是這樣,也是這樣!的反應總是想:
ERROR 1452: Cannot add or update a child row: a foreign key constraint fails (`ml`.`#sql-d04_2`, CONSTRAINT `FK_excoeff_secID` FOREIGN KEY (`SecurityID`) REFERENCES `securities` (`SecurityID`))
故障出現立即似乎並沒有涉及到實際的數據。如您所見,在錯誤消息中,表名通常所在的位置現在被填充了一個奇怪的字符串。並且不管引用表是什麼,該錯誤包含相同的字符串。
所有這一切在MySQL工作臺的「ALTER TABLE」部分happend,也可作爲一個普通的SQL查詢。
我有什麼錯???
http://stackoverflow.com/questions/21659691/error-1452-cannot-add-or-update-a-child-row-a-foreign-key-constraint-fails –
的可能的複製沒有, 不是這樣。關鍵的區別是1)表名的奇怪字符串。它必須意味着什麼,2)它是所有表格的_same_「表名」,我嘗試向它們添加FK。 3)所有的表數據_was_由同等的外鍵管理。數據中沒有衝突! – MeirG