在关系数据模型中归一化为Boyce Codd Normal Form

时间:2012-08-22 01:07:00

标签: database normalization

好的,对大多数人来说这可能是非常基本的,但是我很难做这个任务(是的,这是家庭作业)。我现在已经尝试了两次,到目前为止都失败了两次。

我需要在Boyce Codd Normal Form中创建一个关系数据模型。 以下是详细信息:

  

小国的机场管理局需要存储数据库   有关航空公司,飞行员和飞机的信息。

     

只有一个   机场但有几家航空公司使用它。对于每个航空公司   需要识别码和全名与电话一起使用   当地办事处的数量。几种类型的飞机使用机场和   对于每种类型,应记录燃料容量和最大范围。

     

每个试点仅适用于一家航空公司。对于每个飞行员,他们的名字,   出生日期,地址,他们可以飞行的飞机类型及其   飞行员执照号码应予以记录。更多信息将是   记录以生成列出以下内容的报告   使用机场的每架飞机的详细信息:飞机识别   代码,平面类型,制造日期,拥有航空公司。

这就是我现在所拥有的(重新设计之后):

AIRLINES表应包括:

ID,
Name,
Phone #

表格PLANES应包括:

ID,
Date of Manufacture
Airline ID
FOREIGN KEY (Airline ID) references table AIRLINES
Plane Type ID 
FOREIGN KEY (Plane Type ID) references table PLANE TYPE

表格PLANE TYPE应包括:

ID,
Maximum range,
Fuel capacity,

表PILOTS应包括:

ID,
Name,
Date of Birth,
Address,
License #,
Airline ID,
FOREIGN KEY (Airline ID) references table AIRLINES
PilotPlaneID
FOREIGN KEY (PilotPlaneID) references table PILOTPLANETYPE

表PILOTPLANETYPE应包括:

   PilotID
   PlaneTypeID
   FOREIGN KEY (PilotID) references table PILOT
   FOREIGN KEY (PlaneTypeID) references table PLANE TYPE

根据我的标记,我在Pilot和Plane Type之间留下了多对多的关系。 拥有一些数据库设计知识的人能帮助我吗?

(编辑:表格现在用PILOTPLANETYPE更新,我认为应该满足要求)?

1 个答案:

答案 0 :(得分:1)

您的设计每个飞行员都有一种飞机类型。

描述包含“他们可以飞行的飞机类型”。这个复数表明每个飞行员都可以飞行很多飞机。

由于这是作业,我会让你弄清楚如何将这些信息放入你的设计中。