数据库表设计 - 父子记录从主表中分离出来?

时间:2016-11-25 09:36:12

标签: database parent-child

我有一个表“person”,将字段实现为'SupervisorID'。

是PersonID PersionName DOB 地址 SupervisorID

如果SupervisorID字段为空或NULL表示他/她是主管或根本没有主管。

我想把它作为单独的表分开,例如。表'主管'表示这种亲子关系。

表'主管': SupervisorID 是PersonID

对于那些没有主管的人不会出现在这张表中。

1 个答案:

答案 0 :(得分:0)

如前所述,您正在尝试创建多对多关系(即:员工可以拥有多个/一个/零个主管)。

对于简单的一对多关系,如果只包含(SupervisorID,PersonID),则通常不需要附加表。当关系具有自己的属性时,它变得有用。例如(SupervisorID,PersonID,DateStarted)可以整齐地存储附加属性:员工 - 主管关系开始时的日期。