Bonjour,
J'ai deux tables à créer sous Oracle.
Table département :
1 2 3 4 5 6
| CREATE TABLE dept(
DEPTNO NUMBER(2),
DNAME CHAR(20),
LOC CHAR(20),
constraint p1 primary key(deptno),
constraint c check( dname in ('ACCOUNTING','RESEARCH','SALLES','OPERATIONS'))); |
Table employés :
1 2 3 4 5 6 7 8 9 10 11 12 13
| create table emp (
empno number (5),
ename varchar (40),
job varchar(40),
mgr number(5),
hiredate date,
sal number(6),
comm number(6),
deptno number(2),
CONSTRAINT E_CLEP PRIMARY KEY(EMPNO),
CONSTRAINT E_CLET1 FOREIGN KEY(DEPTNO) REFERENCES
DEPT(DEPTNO),
CONSTRAINT E_CLET2 FOREIGN KEY(MGR) REFERENCES EMP(EMPNO)); |
et les données suivantes pour la table dept :
1 2 3 4 5
| insert into dept values (10,'ACCOUNTING','NEW-YORK');
insert into dept values (20,'RESEARCH','Dallas');
insert into dept values (30,'SALLES','Chicago');
insert into dept values (40,'OPERATIONS','Boston');
insert into dept values (50,'SALLES','Tunis'); |
Jusque là tout va bien, mais le problème survient quand j'essaie d'insérer des données à la table emp :
insert into emp values(7499,'ALLEN','SALESMAN',7698,'20/02/81',160000,30000,30);
Quand j'exécuté sur SQL*Plus ce message d'erreur s'affiche sur le terminal :
ORA:02291 : violation de contrainte d'intégrité <base.E_CLET2> clé parent introuvable.
Merci pour votre aide d'avance.
Partager