我試圖插入此代碼到我的相冊表上我的MySQL數據庫不能將值插入表,外鍵約束不斷失敗
INSERT INTO `Albums` (`Albumid`, `Name`, `Numberoftracks`, `Artistid`, ]
`Genre`) VALUES (1, "Innuendo", 12, "Queen", "Rock");
但每次我嘗試時候,我不斷收到此錯誤。
1452 - Cannot add or update a child row: a foreign key constraint fails
(`b4014107_db1/Albums`, CONSTRAINT `Albums_ibfk_1` FOREIGN KEY (`Artistid`)
REFERENCES `Artist` (`Artistid`))
我知道這件事情做的表內我的外鍵,但我需要手動輸入外鍵,因爲它不是自動遞增。
這是表代碼。
CREATE TABLE `Albums` ( `Albumid` int(6) NOT NULL, `Name` varchar(50) NOT
NULL, `Numberoftracks` int(11) NOT NULL, `Artistid` int(6) NOT NULL,
`Genre` varchar(50) NOT NULL, PRIMARY KEY (`Albumid`), KEY `Artistid`
(`Artistid`), CONSTRAINT `Albums_ibfk_1` FOREIGN KEY (`Artistid`)
REFERENCES `Artist` (`Artistid`)) ENGINE=InnoDB DEFAULT CHARSET=latin1
我該如何解決這個問題?我需要將數據輸入到表格中。
您是否在藝術家的桌子上添加了藝術家「女王」?因爲如果沒有,你應該先添加藝術家,否則你的FK將會被違反。 –
另外,ArtistId是一個數字,您正嘗試在其中添加VARCHAR。您應該將藝術家'女王'添加到表格藝術家,並獲取ArtistId以用於插入您的藝術家。 –