[SQL\oracleXE] violation de contrainte uniqu

cros Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -  
Peut-êtreUneRéponse Messages postés 47 Date d'inscription   Statut Membre Dernière intervention   -
bonjour j'ai un probleme de vilation de contraintes uniques et je ne vois pas d'ou ca vient voici mes tables et mes insert

CREATE TABLE appareil
(
num_vol number(4) PRIMARY KEY,
num_avion NUMBER(4),
nbvolh_mois NUMBER(4),
nbhvol_tot NUMBER(6),
capacite NUMBER(5),
charge NUMBER(5),
autonomie NUMBER(4),
date_rev DATE,
rcarbdecol NUMBER(4),
vit_crois NUMBER (4),
qte_max_carb NUMBER(4)
);

CREATE TABLE personnel
(
num_vol number(4) PRIMARY KEY,
nom VARCHAR(20),
prenom VARCHAR(20),
naissance DATE,
dern_medic DATE,
metier VARCHAR(20),
num_brevet NUMBER (4),
type_brevet VARCHAR (30),
num_equip NUMBER(4),
qual VARCHAR(30),
nb_h_vol_th NUMBER(4),
nb_h_vol_reel NUMBER(4),
nb_h_vol_sup NUMBER(4)
);

CREATE TABLE aeroport
(
num_vol number(4) PRIMARY KEY,
nom_aero VARCHAR(40),
code_aero number(4),
localite CHAR(10),
num_tel VARCHAR(20),
h_depart_r CHAR(10),
h_depart_t CHAR(10),
nom_aero_arr VARCHAR (40),
h_arrivée_r CHAR(10),
h_arrivée_t CHAR(10),
date_dep_th DATE
);

CREATE TABLE troncon
(
num_vol number(4) PRIMARY KEY,
num_avion NUMBER(4),
code_aero VARCHAR(20),
frequence NUMBER (2),
longueur NUMBER(2),
nbr_place_oqp NUMBER(4),
nbr_place_reserv NUMBER(4),
num_ordre NUMBER (4)
);

#insert


#table appareil
INSERT INTO APPAREIL VALUES(1110,300,400,10000,700,10,20,'17/11/1999',1000,950,280);
INSERT INTO APPAREIL VALUES(1120,400,440,110000,700,10,20,'17/06/1999',1000,950,280);
INSERT INTO APPAREIL VALUES(1210,200,420,14000,700,10,20,'17/03/1999',1000,950,280);

#table personnel
INSERT INTO PERSONNEL VALUES(1110,'ROUSSET','ALEXIS','20/12/1986','17/11/1999','STWEWART',2,'pro',1000,'polyglote',280,270,0);
INSERT INTO PERSONNEL VALUES(1110,'RAVIER','MATHIEU','2/12/1986','17/11/1999','STWEWART',2,'pro',1000,'polyglote',280,270,0);
INSERT INTO PERSONNEL VALUES(1110,'FARNES','SABRINE','19/12/1986','17/11/1999','STWEWART',2,'pro',1000,'polyglote',280,270,0);
INSERT INTO PERSONNEL VALUES(1110,'SIGWALD','ETIENNE','18/12/1986','17/11/1999','PILOTE',3,'pro',1000,'pipo',2800,2900,100);


#table aeroport
INSERT INTO aeroport VALUES(1110,'Roissy charles de Gaulle',1,'France','0898939495','10h00','10h30','Londres','18h00','19h00','20/12/2006');
INSERT INTO aeroport VALUES(1120,'LONDRES',4,'angleterre','0898939495','10h00','10h30','JFK','18h00','19h00','20/12/2006');
INSERT INTO aeroport VALUES(1210,'JFK',5,'USA','0898939495','10h00','10h30','Buenos aires','18h00','19h00','20/12/2006');
INSERT INTO aeroport VALUES(1410,'Buenos AIRES',6,'bresil','0898939495','10h00','10h30','Roissy charles de Gaulle','18h00','19h00','20/12/2006');

#table troncon
INSERT INTO troncon VALUES(1110,400,1,20,10,450,500,40);
INSERT INTO troncon VALUES(1210,200,3,20,10,450,500,40);
INSERT INTO troncon VALUES(1120,300,4,20,10,450,500,40);
INSERT INTO troncon VALUES(1410,500,6,20,10,450,500,40);

1 réponse

Peut-êtreUneRéponse Messages postés 47 Date d'inscription   Statut Membre Dernière intervention   11
 
Bonjour,

tu INSERT dans la table "personnel" 4 lignes avec un "num_vol number" identique (1110) alors que ce "num_vol number" est la clé primaire de ta table "personnel".

Tu dois déclarer une autre clé primaire ou l'étendre aux colonnes nom et prenom de ta table.


0