2016-07-01 5 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のテーブルを作成している間、私はエラーを持っている私に語った:ORA-00907 Oracle 11gので

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

私は答えを探して2時間を費やして、まだ問題が何であるかを理解していません。誰か助けてくれますか?

答えて

1

プライマリキー制約は単一の列にないため、列定義の一部としてではなく個別に作成する必要があります。

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

これは機能します。どうもありがとうございます。私はこれに感謝します。力と愛と繁栄がいつもあなたと共にありますように。 –