我有兩個表。一個叫BooksRead,一個叫作作者。作者的主鍵是author_last_name和author_first_name。無法添加SQL外鍵約束
我正在使用Netbeans IDE。
我想改變表BooksRead,它也有列author_last_name和author_first_name,引用作爲外鍵的作者。
ALTER TABLE BooksRead
ADD FOREIGN KEY(AUTHOR_LAST_NAME, AUTHOR_FIRST_NAME)
REFERENCES AUTHORS(AUTHOR_LAST_NAME, AUTHOR_FIRST_NAME);
我試圖做到這一點許多不同的方式 - 包括添加/命名的約束 - 但總是得到同樣的錯誤:
[Exception, Error code 30,000, SQLState X0Y45] Foreign key constraint 'SQL170903182055780' cannot be added to or enabled on table BOOKSREAD because one or more foreign keys do not have matching referenced keys.
您正在使用哪些DBMS?是德比嗎? – Phil
此外,聽起來就像您的'BooksRead'表中有違反外鍵約束的數據,即'作者' – Phil
Java DB,Apache Derby中沒有匹配的記錄。 – beh1