我需要实现数据库来跟踪包裹的位置。数据库超类型/子类型
可以有基本的4个位置,也就是在飞机上,在船上,上了一辆车,在运输办公室。
我需要为这4个位置的独立实体,因为它们都具有各自的多发情况下(例如很多飞机,多辆汽车)
而且,这些4个实体都是由一个管理,只有一个员工(另一个实体)。
我创建了一个叫做作业的关联实体,从而它存储了有关哪些员工在每个4个地点,相似的包含与驾驶员ID飞机ID的航班号的工作。
我已经研究了4个地点的属性,并发现它们可分为汽车作为超和飞机,轮船和汽车的办公室被亚型。
会有LOCATION_ID的独特属性,它告诉我,无论是在飞机上或在超办公室,因此亚型将继承这个属性。
我的问题是,在表设计中,由于位置将分成四个不同的表,每当我从作业实体引用location_id(FK)时,是否仍然可以这样做,因为外键通常仅链接到一个表,并在这种情况下,不4表..
EMPLOYEE [EMPLOYEE_ID,employee_name,性别,contact_number,job_scope]
JOB [JOB_ID,(EMPLOYEE_ID),(LOCATION_ID)]
OFFICE [LOCATION_ID,office_id,地址]
CAR [LOCATION_ID,vehicle_id]
飞机[LOCATION_ID,vehicle_id,类型,unladen_weight]
SHIP [LOCATION_ID,vehicle_id ,大小]
我们在这里似乎有点误解,我的不好。看到我下面更新的答案。 –