SQL 缺少右括号 ORA-00907
SQL missing right parenthesis ORA-00907
谁能告诉我为什么会出现这个错误?谢谢!
CREATE TABLE Booking (
hotelNo char(2) NOT NULL,
guestNo char(2) NOT NULL,
dateFrom date NOT NULL,
dateTo date
roomNo char(2) NOT NULL,
CONSTRAINT booking_pk PRIMARY KEY (hotelNo, guestNo, dateFrom),
CONSTRAINT booking_hotel_fk FOREIGN KEY (hotelNo) REFERENCES
CONSTRAINT booking_guest_fk FOREIGN KEY (guestNo) REFERENCES Guest(guestNo),
CONSTRAINT booking_room_fk FOREIGN KEY (hotelNo, roomNo)
REFERENCES Room(hotelNo, roomNo)
);
您至少有两个错误。 date
后缺少逗号。但是您也没有完成外键引用。所以,像这样:
CREATE TABLE Booking (
hotelNo char(2) NOT NULL,
guestNo char(2) NOT NULL,
dateFrom date NOT NULL,
dateTo date,
-----------^
roomNo char(2) NOT NULL,
CONSTRAINT booking_pk PRIMARY KEY (hotelNo, guestNo, dateFrom),
CONSTRAINT booking_hotel_fk FOREIGN KEY (hotelNo) REFERENCES hotel(hotelNo),
-------------------------------------------------------------^
CONSTRAINT booking_guest_fk FOREIGN KEY (guestNo) REFERENCES Guest(guestNo),
CONSTRAINT booking_room_fk FOREIGN KEY (hotelNo, roomNo) REFERENCES Room(hotelNo, roomNo)
);
谁能告诉我为什么会出现这个错误?谢谢!
CREATE TABLE Booking (
hotelNo char(2) NOT NULL,
guestNo char(2) NOT NULL,
dateFrom date NOT NULL,
dateTo date
roomNo char(2) NOT NULL,
CONSTRAINT booking_pk PRIMARY KEY (hotelNo, guestNo, dateFrom),
CONSTRAINT booking_hotel_fk FOREIGN KEY (hotelNo) REFERENCES
CONSTRAINT booking_guest_fk FOREIGN KEY (guestNo) REFERENCES Guest(guestNo),
CONSTRAINT booking_room_fk FOREIGN KEY (hotelNo, roomNo)
REFERENCES Room(hotelNo, roomNo)
);
您至少有两个错误。 date
后缺少逗号。但是您也没有完成外键引用。所以,像这样:
CREATE TABLE Booking (
hotelNo char(2) NOT NULL,
guestNo char(2) NOT NULL,
dateFrom date NOT NULL,
dateTo date,
-----------^
roomNo char(2) NOT NULL,
CONSTRAINT booking_pk PRIMARY KEY (hotelNo, guestNo, dateFrom),
CONSTRAINT booking_hotel_fk FOREIGN KEY (hotelNo) REFERENCES hotel(hotelNo),
-------------------------------------------------------------^
CONSTRAINT booking_guest_fk FOREIGN KEY (guestNo) REFERENCES Guest(guestNo),
CONSTRAINT booking_room_fk FOREIGN KEY (hotelNo, roomNo) REFERENCES Room(hotelNo, roomNo)
);