2016-07-01 4 views
0
CREATE TABLE passager 
(
codePassager NUMBER(38,0) CONSTRAINT passager_code_pk  PRIMARY KEY, 
nom    VARCHAR2(15) CONSTRAINT passager_nom_nn   NOT NULL, 
prenom   VARCHAR2(15) CONSTRAINT passager_prenom_nn  NOT NULL, 
adresse   VARCHAR2(50) CONSTRAINT passager_adresse  NOT NULL, 
telephone  VARCHAR2(10) CONSTRAINT passager_tel   NOT NULL, 
ville   VARCHAR2(20) CONSTRAINT passager_ville   NOT NULL, 
pays   VARCHAR2(20) CONSTRAINT passager_pays   NOT NULL, 
status   VARCHAR2(1)  CONSTRAINT passager_status   NOT NULL 
); 

CREATE TABLE reservation 
(
codePassager NUMBER(38,0) CONSTRAINT passager_reservation_codePsg REFERENCES passager(codePassager), 
codeReservation NUMBER(38,0) CONSTRAINT reservation_pk   PRIMARY KEY (codePassager, codeReservation), 
statusReservation VARCHAR2(1) CONSTRAINT reservation_status  NOT NULL, 
dateReservation VARCHAR2(8) CONSTRAINT reservation_date  NOT NULL 
); 

Oracle mir sagt, ich habe einen Fehler:ORA-00907, während eine Tabelle in Oracle 11g Erstellen

ORA-00907 on line "codeReservation NUMBER(38,0) CONSTRAINT reservation_pk PRIMARY KEY (codePassager, codeReservation),"

verbringe ich 2 Stunden Suche nach einer Antwort und immer noch nicht verstehen, was das Problem ist. Kann mir bitte jemand helfen?

Antwort

1

Da sich die Primärschlüsseleinschränkung nicht in einer einzelnen Spalte befindet, muss sie separat und nicht als Teil der Spaltendefinition erstellt werden.

CREATE TABLE reservation 
(
    codePassager NUMBER(38,0) CONSTRAINT passager_reservation_codePsg REFERENCES passager(codePassager), 
    codeReservation NUMBER(38,0) , 
    statusReservation VARCHAR2(1) CONSTRAINT reservation_status  NOT NULL, 
    dateReservation VARCHAR2(8) CONSTRAINT reservation_date  NOT NULL, 
    CONSTRAINT reservation_pk  PRIMARY KEY (codePassager, codeReservation) 
); 
+0

Es funktioniert. Ich danke dir sehr. Ich schätze das sehr. Möge die Kraft, die Liebe und der Wohlstand immer bei dir sein. –