需要帮助设计我的数据库

时间:2018-03-20 00:29:29

标签: sql sql-server database weak-entity er-modeling

我有一定数量的实体,其中6个实体彼此相关。但是其中4个(即,JobInfo,Child,Spouse和ParentInfo)链接到主Person / Employee实体,并且此雇员实体需要​​公司的主键,即CompanyID,因为EmployeeID可能不是唯一的。所以我现在不知道如何设计我的数据库。

据我所知,唯一的方法是将CompanyID声明为其他4个属性中的外键。 [我很难过,因为员工在没有公司的情况下不能存在,基本上使其成为弱势实体而其他4个实体在没有员工实体的情况下不能存在]

谢谢,它将在sql management studio中的mssql中完成

编辑:忘记提及Employee的主键很可能是公司和员工主键的复合键

1 个答案:

答案 0 :(得分:0)

我觉得我找到了答案。我决定使用companyID和EmployeeID的复合键作为Employee Table(因为Employee是一个弱实体),并使用这个复合键作为其他4个实体的复合主键,因为它们中的所有四个都是也成为弱实体。