2016-04-28 73 views
0

我仍然在SQL初學者,我有一個問題ERROR位於第1行:ORA-02291:完整性約束(SYSTEM.FUN_EMP_DEPT_FK)違反 - 父鍵沒有找到

CREATE TABLE Funtom_employee 
(
emp_ID number(3) CONSTRAINT Fun_emp_PK PRIMARY KEY, 
Emp_firstname varchar2(50) NOT NULL, 
Emp_surname varchar2(50), 
Emp_department number(2) CONSTRAINT Fun_emp_dept_FK REFERENCES Funtom_department(dept_ID), 
emp_street varchar2(50), 
emp_town varchar2(50), 
emp_district varchar2(50), 
Emp_grade number(3) default 4 CONSTRAINT chk_Emp_grd check(Emp_grade between 1 and 9), 
Emp_site varchar2(30) DEFAULT'LONDON' 
); 

ALTER TABLE Funtom_employee ADD Employee_status varchar2(10); 
ALTER TABLE Funtom_employee ADD Employee_termination date; 
ALTER TABLE Funtom_employee ADD Employee_start date; 

CREATE TABLE Funtom_department 
(
dept_ID number(3) CONSTRAINT Fun_dept_PK PRIMARY KEY, 
dept_name varchar2(50) NOT NULL 
); 

這是我的代碼表的代碼和

insert into funtom_employee (emp_id, emp_firstname, emp_surname, emp_department, emp_street, emp_town, emp_district, emp_grade, emp_site) values (1,'CIEL','PHANTOMHIVE',5,'PHANTOMHIVE MANNOR REGAL AVENUE',null,'LONDON',9,'LONDON'); 

這是我需要插入

錯誤表明,當我插入數據的數據

ERROR at line 1: 

ORA-02291:完整性約束(SYSTEM.FUN_EMP_DEPT_FK)違反 - 父鍵 沒有找到

我找不到這個問題,似乎代碼罰款對我來說,能有人幫我找出問題?我非常感謝,非常感謝你

+0

@JoachimIsaksson這不是「可能」的原因,這就是原因,請張貼答案。 –

+0

您的代碼沒有任何問題。確保你輸入了帶有'dept_ID' ='5'的'Funtom_department'表中的記錄。 –

回答

0

你的錯誤信息;

ORA-02291:完整性約束(SYSTEM.FUN_EMP_DEPT_FK)違反 - 父鍵沒有找到

...基本上意味着你正在試圖打破由外鍵Fun_emp_dept_FK強制執行的基準而在這種情況下確認用戶所屬的部門實際上存在。

換句話說,你得到錯誤的原因是你試圖添加屬於一個不存在的部門的用戶

相關問題