Lishyer
2017-12-29 07:47
采纳率: 33.3%
浏览 2.8k
已采纳

一个表中可以存在两个实体集吗

有两个实体 一个是HR,一个是部门经理
在建表的时候,这两个实体都在管理人员信息表用,用职位类别区分
这样弄可以吗
如果可以的话 那ER图上需要用什么符号将两个实体联系起来,说明这是在同一个表中

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

8条回答 默认 最新

  • abcfgh 2017-12-29 08:02
    已采纳

    这个可以通过角色来区分的。本质上是角色不同。表中存放的是数据。你所说的两个实体(HR和部门经理)可以通过继承一个员工类来实现
    ,因为HR和部门经理及其他企业人员,都属于企业的员工;所谓的实体关系是一种联系。也就是如果HR和部门经理有一种关系,如(朋友关系\需求关系...)

    已采纳该答案
    打赏 评论
  • u010327845 2017-12-29 08:01

    把两表建立关联,表中ID要相同。

    打赏 评论
  • 星月道人 2017-12-29 08:26

    根据你的需求可以 添加一个冗余字段进行标识,,,区别实体类型, 这种做法会牺牲数据库空间。。。。
    例如有一张user表,两个实体 student, worker
    1、学生(编号,姓名,年龄,学校,院系)
    2、工人(编号,姓名,年龄,公司,工号)

    那么用户 使用用户类型来区分是学生还是工人。。。
    用户(编号,姓名,年龄,学校,院系,公司,工号, 用户类型)

    打赏 评论
  • Tourneau 2017-12-29 08:26

    在我看来 hr和部门经理 存在共有属性,根据单一职责原则,hr和部门经理得进行角色划分继承一个公共父类,降低耦合性

    打赏 评论
  • Tourneau 2017-12-29 08:31

    图片说明

    打赏 评论
  • 风凌119 2017-12-29 08:51

    是可以的 只是角色不同,加个角色字段,以后也方便角色控制

    打赏 评论
  • Java批发 2018-01-02 11:15

    我觉得楼上说的挺好的 直接可以用一个字段表示 只不过这个字段拥有不同的值 也就是标识符 1 hr 2经理 类似这种

    打赏 评论
  • ht799426868 2017-12-29 07:59

    在我看来,hr和部门经理只应该算作一个实体-——公司职员,不应该分为两个实体的。

    1 打赏 评论

相关推荐 更多相似问题