2016-04-28 3 views
0

ich noch in SQL Anfänger bin und ich habe ein ProblemFEHLER in Zeile 1: ORA-02291: Integritätsbedingung (SYSTEM.FUN_EMP_DEPT_FK) verletzt - übergeordnete Schlüssel nicht gefunden

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 
); 

dies mein Code-Tabelle Code ist und

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'); 

Dies sind die Daten i

Fehler einfügen müssen zeigte, wenn ich die Daten einfügen

ERROR at line 1: 

ORA-02291: Integritätsbedingung (SYSTEM.FUN_EMP_DEPT_FK) verletzt - übergeordneten Schlüssel nicht gefunden

i das Problem nicht finden konnte, der Code scheint mir gut, kann mir jemand hilft, das Problem herauszufinden ? Ich schätze es wirklich und vielen Dank

+0

@JoachimIsaksson Das ist nicht der "wahrscheinliche" Grund, das ist der Grund, bitte posten Sie als Antwort. –

+0

Ihr Code funktioniert ohne Probleme. Stellen Sie sicher, dass Sie einen Datensatz in die 'Funtom_department'-Tabelle mit' dept_ID' = '5' eingegeben haben. –

Antwort

0

Ihre Fehlermeldung;

ORA-02291: Integritätsbedingung (SYSTEM.FUN_EMP_DEPT_FK) verletzt - übergeordnete Schlüssel nicht

gefunden

... im Grunde bedeutet, dass Sie versuchen, die Referenz durch den Fremdschlüssel Fun_emp_dept_FK erzwungen zu brechen, die In diesem Fall wird bestätigt, dass eine Abteilung, zu der der Benutzer gehört, tatsächlich existiert.

Mit anderen Worten, der Grund, warum Sie den Fehler erhalten, ist, dass Sie versuchen, einen Benutzer hinzufügen, der zu einer Abteilung gehört, die nicht existiert.

Verwandte Themen