【发布时间】:2021-03-11 03:38:02
【问题描述】:
我在课堂上提到 FlightData 表中的 2 个外键是 Depart_Code 和 Ariv_Code 在关系模式中没有任何表可以引用它们作为主键给定的。
在课堂上,有人告诉我他们在Airport 表中引用了Airport_Code。我想知道我会这样做吗?我觉得我错过了一些明显的东西。感谢您提供的任何帮助。总的来说,我还是数据库新手,目前使用的是 Oracle 11g。
机场表
CREATE TABLE Airport
(
Airport_Code VARCHAR2(7) CONSTRAINT pk_Airport Primary Key,
City_Code VARCHAR2(3),
CONSTRAINT fk_Airport_City_Code
FOREIGN KEY(City_Code) REFERENCES City,
Airport_Name VARCHAR2(30)
);
FlightData 表:
CREATE TABLE FlightData
(
Flt_Nbr VARCHAR2(3) CONSTRAINT pk_FlightData Primary Key,
Depart_Code VARCHAR2(30),
Ariv_Code VARCHAR2(30)
);
【问题讨论】:
-
如果我理解正确的话,Depart_code 和 Ariv_code 是 Airport 代码,所以它们应该通过 FK 链接到 Airport 表,所以这两列缺少 FK to Airport(Airport_Code)
标签: sql database-design oracle11g foreign-keys rdbms