全部和部分参与ERD

时间:2018-11-26 03:08:20

标签: database erd

让我们说工作时间是实体类型Employee和Department之间的关系,并且基数是一对多的。员工完全参与工作关系是否换句话说,就是说,如果我曾经将员工放入数据库,则必须提供该员工所在的部门?用数学术语来说:雇员放在表中<=>雇员具有关联的部门。有人可以用涉及实体集合和关系集合的简单术语来解释吗?谢谢。

1 个答案:

答案 0 :(得分:2)

根据您提供的信息,您所提出的问题并不完全清楚。

例如:如果一个员工必须有一个部门,并且每个部门都必须有一个员工,那么双方都是完全参与的。 (如果部门有员工,则不能删除。如果部门没有其他员工,则不能删除员工)。基本上,这意味着那些外键不能为空

但是,如果一个部门必须有一个雇员,但是一个雇员不必有一个部门,那么该部门可以完全参与,而雇员可以部分参与。基本上,这意味着这些外键可以设置为null。