0
--Create Flight schedule table
CREATE TABLE FlightSchedule
(RouteID VarChar(6),
FlightDate DATE NOT NULL,
PlaneSerial VarChar(10) NOT NULL,
CONSTRAINT FlightIDDATEPK PRIMARY KEY(RouteID, FlightDate),
CONSTRAINT FlightNoFK FOREIGN KEY(RouteID)
REFERENCES ROUTE(RouteID),
CONSTRAINT PlaneSerialFK FOREIGN KEY(PlaneSerial)
REFERENCES AIRPLANE(PlaneSerial));
--Create Crew table
CREATE TABLE Crew
(EmpID NUMBER(5) NOT NULL,
RouteID Varchar(6) NOT NULL,
FlightDate DATE NOT NULL,
CONSTRAINT EMPIDPK PRIMARY KEY(EmpID, RouteID, FlightDate),
CONSTRAINT EMPIDFK FOREIGN KEY(EmpID)
REFERENCES EMPLOYEE(EmpID),
CONSTRAINT RouteIDFK FOREIGN KEY(RouteID)
REFERENCES ROUTE(RouteID),
CONSTRAINT DATEFK FOREIGN KEY(FlightDate)
REFERENCES FlightSchedule(FlightDate));
我试图创建2个表,但收到以下错误。已经设置了主键,但不知道什么是错的。Oracle SQL中的唯一或主键错误不匹配
Error at Command Line : 26 Column : 28
Error report -
SQL Error: ORA-02270: no matching unique or primary key for this column-list
02270. 00000 - "no matching unique or primary key for this column-list"
*Cause: A REFERENCES clause in a CREATE/ALTER TABLE statement
gives a column-list for which there is no matching unique or primary
key constraint in the referenced table.
*Action: Find the correct column names using the ALL_CONS_COLUMNS
catalog view
每个'EMPLOYEE','FlightSchedule'是否都有相应的UQ/PK? – zerkms 2014-11-23 09:05:36
他们在另一张桌子上有自己的PK – XGAl 2014-11-23 09:10:15