簡體   English   中英

錯誤1452 MySQL

[英]Error 1452 MySQL

將數據插入空表中,但出現錯誤1452。我不確定為什么MySQL在錯誤中提到了NameInfo表。

CREATE TABLE NameInfo (
Language VARCHAR(7) NOT NULL,
Status VARCHAR(13) NOT NULL, 
Standard VARCHAR(13) NOT NULL, 
Name VARCHAR(13) NOT NULL, 
Name_ID INT(4) NOT NULL, 
Place_ID INT(9) NOT NULL, 
Supplier_ID INT(4) NOT NULL, 
Date_Supplied DATE NOT NULL, 
PRIMARY KEY (Name_ID),
FOREIGN KEY (Supplier_ID) REFERENCES Supplier(Supplier_ID),
FOREIGN KEY (Place_ID) REFERENCES Place(Place_ID) 
);


CREATE TABLE Departments ( 
Dept_ID INT(6) NOT NULL,
Dept_NAME VARCHAR(25) NOT NULL, 
DeptHead_ID INT(6) NOT NULL,
DeptAA VARCHAR(20) NOT NULL, 
ParentDept_ID INT(4) NOT NULL,
Location VARCHAR(10) NOT NULL, 
DeptType VARCHAR(12) NOT NULL, 
Primary key (Dept_ID)
); 

CREATE TABLE Employee ( 
Emp_ID INT(6) NOT NULL, 
Name VARCHAR(15) NOT NULL,
Dept_ID INT(6) NOT NULL, 
Tax_ID INT(4) NOT NULL, 
Country VARCAR(15) NOT NULL, 
Hire_Date DATE NOT NULL,
Birth_Date DATE NOT NULL, 
Salary INT(6) NOT NULL, 
Bonus INT(6) NOT NULL,
AddressInfo VARCHAR(30) NOT NULL,
PRIMARY KEY(Emp_ID),
FOREIGN KEY(Dept_ID) REFERENCES Departments(Dept_ID)
); 

將數據插入到父表Departments,子表Employee之前。

INSERT INTO Departments
VALUES (040124,'Human Resource Division',405802,'Mohammed Siddiqui',1001,'California','HR');

INSERT INTO Employee
VALUES (901126,'Kenneth Tran',040126,3013,'United States',06/01/2013,06/01/1992,80430,500,'N. 2nd St. Santa Clara, CA.');

ERROR 1452 (23000): Cannot add or update a child: a foreign key constraint fails     ('namesinc'_'employee', CONSTRAINT 'employee-ibfk_1 'FOREIGN KEY ('Dept_ID') REFERENCES 'DEPARTMENTS' ('DEPT_ID'))

如果可以提供其他信息,請告訴我。

錯誤1452表示插入失敗,因為無法兌現外鍵約束。

您的查詢正在將數據插入Employee表,該表具有引用Departments表的外鍵約束。 如果您尚未設置“ Department條目,則“ Employeee行所引用的插入將失敗。

您需要先插入“ Departments條目,否則您的“ Employee插入將無法通過該測試。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM