员工和部门的基数是什么?

时间:2016-01-05 09:59:52

标签: entity relational-database entity-relationship

  

公司数据库需要存储有关员工的信息   (由ssn标识,工资和电话为属性),

     

部门(由dno标识,dname和budget作为属性),   雇员的子女(姓名和年龄作为属性)。

     

员工在部门工作;每个部门都由一个   雇员;

     

当父母(他是一个孩子)必须通过名字唯一地识别孩子   雇员;假设只有一个父母为公司工作)。

     

一旦父母,我们对孩子的信息不感兴趣   离开了公司。

     

绘制一个捕获此信息的ER图。

enter image description here

我正在使用" Look Across" Min-Max符号在这里。

员工和部门之间的基数是否正确?

例如,部门可能没有员工吗?或者,这是相关信息吗?

3 个答案:

答案 0 :(得分:2)

您的答案是正确的,并且在我拥有的两个不同文本中与此常见示例的教师密钥相匹配。

其他想法

不幸的是,大多数教科书都是对现实的不良反映,因为它们使事情变得无足轻重,但在向学生介绍复杂的主题时,例如在数据库中建模现实,这被认为是必要的。

这说明了从英语叙事中创建ERD的问题,但这种问题可能含糊不清并且可以解释。如果你指出这一点,可能会与你的导师一起得分。实际上,员工为多个部门(我这样做)工作并且管理人员管理多个部门(我的工作)并不少见。与客户合作时,最好还使用物理数据模型(表格和行)或实际用户界面(数据输入表单)来表达更模糊的设计,以便他们确定所获得的内容。

答案 1 :(得分:0)

如果某个部门必须有一名经理,并且该经理是为该部门工作的,则部门必须至少有1名员工。

员工可以(我假设)从理论上管理超过1个部门,部门也可以(假设)由超过1个员工管理。

所以我看到它就像这样

Employee *-* Department   (many to many relationship)

或以您的名义

Employee  1-N  Works In    1-N  Department
Employee  1-N  Managed By  1-N  Department

答案 2 :(得分:0)

对于在部门工作的案例,您的基数不正确。由于员工可以在0或多个部门工作。这里的基数应如下:

员工(0,n) - 在(0,n)部门工作。

在另一个案例中,部门必须有一名员工与之相关联。 在您的案例中,由员工管理的案件部门的基数是正确的。