2017-09-22 184 views
2

我想不通爲什麼我收到此錯誤:完整性約束(LEETO14.SYS_C00414504)違反

integrity constraint (LEETO14.SYS_C00414504) violated - parent key 

沒有找到

一切工作,直到爲CurrentLoan插入值。這是我的代碼:

CREATE TABLE Book 
(bookID INT PRIMARY KEY, 
ISBN INT, 
title varchar (20), 
author varchar (20), 
publish_year INT, 
category varchar(20)); 

CREATE TABLE Member 
(memberID INT PRIMARY KEY, 
lastname varchar (20), 
firstname varchar (20), 
address varchar(20), 
phone_number INT, 
limit_ INT); 

CREATE TABLE CurrentLoan 
(memberID INT, 
bookID INT, 
loan_date DATE, 
due_date DATE, 
PRIMARY KEY (memberID, bookID), 
FOREIGN KEY (memberID) REFERENCES Member(memberID), 
FOREIGN KEY (bookID) REFERENCES Book(bookID)); 

INSERT INTO Book VALUES (10, 1113312336, 'The Dog', 'Jack Crow', 1990, 'fiction'); 
INSERT INTO Book VALUES (12, 2221254896, 'Worms', 'Jim Kan', 2013, 'fiction'); 
INSERT INTO Book VALUES (13, 3332546987, 'Crow', 'Jan Flo', 2000, 'fiction'); 
INSERT INTO Book VALUES (14, 4443456215, 'Big Dog', 'Lan Big', 1993, 'fiction'); 
INSERT INTO Book VALUES (15, 5552314569, 'Green Apple', 'Theo Brown', 1978, 'fiction'); 
INSERT INTO Book VALUES (16, 6664581631, 'Red Bean', 'Khang Nk', 2017, 'fiction'); 
INSERT INTO Book VALUES (17, 7771452369, 'The Dark Car', 'Author Le', 2017, 'fiction'); 
INSERT INTO Book VALUES (18, 8881245525, 'The Dark Room', 'Jack Se', 2017, 'fiction'); 
INSERT INTO Book VALUES (19, 9991123546, 'Lonely Mens', 'Geen Brown', 2014, 'fiction'); 
INSERT INTO Book VALUES (20, 1122112356, 'The Big Tree', 'Heart Le', 2002, 'fiction'); 

INSERT INTO Member VALUES (001, 'Lee', 'Nancy', 'Brownlea Drive', 1254896325, 2); 
INSERT INTO Member VALUES (002, 'Le', 'Ray', '10th Street', 1234561256, 2); 
INSERT INTO Member VALUES (003, 'Kan', 'Charlie', '5th Street', 1234567236, 2); 
INSERT INTO Member VALUES (004, 'Brown', 'Joe', 'Elm Street', 1234567845, 2); 
INSERT INTO Member VALUES (005, 'Smith', 'John', '33 East', 1234567890, 2); 

INSERT INTO CurrentLoan VALUES (00123, 0236, '13-SEP-17', '14-NOV-17'); 
INSERT INTO CurrentLoan VALUES (00134, 2350, '13-JAN-17', '15-NOV-17'); 
INSERT INTO CurrentLoan VALUES (00125, 2034, '14-FEB-17', '12-MAR-17'); 
INSERT INTO CurrentLoan VALUES (00345, 0105, '12-OCT-17', '09-NOV-17'); 
INSERT INTO CurrentLoan VALUES (00311, 5012, '13-APR-17', '12-MAY-17'); 
INSERT INTO CurrentLoan VALUES (00213, 2051, '11-JUN-17', '02-OCT-17'); 

回答

3

答案很自我解釋。表中有外鍵,CurrentLoan。查看你的插入語句,你試圖爲沒有創建的成員和沒有創建的書籍添加貸款。

+0

你能展示一個例子還是修復我的一個代碼?對不起,我是新手,所以我不確定你的意思。 – tubvajlis

+0

@tubvajlis:如果* CurrentLoan *中有一個引用* Member *的外鍵,則不能將成員標識輸入到* Member *中不存在的* CurrentLoan *中。 – Jacobm001

+0

@tubvajlis:成員和CurrentLoan插入語句中的第一列是成員標識。注意這些數字之間沒有共同點? – Jacobm001