何时使用关联实体?

时间:2016-07-14 05:55:15

标签: entity-relationship

假设有两个名为Employee和Campaign的实体。一名员工可以参与许多活动。一个活动可以有很多员工。我已经知道这是一对多关系。

当绘制ER图(以Chen表示法)时,关系由菱形表示。但是关联实体有一个单独的符号,它象征着两个实体之间的多对多关系。

1)当我用陈的符号在er图中绘制多对多关系时,我应该使用钻石形状或关联实体形状(正方形内的菱形)吗? 2)他们是否意味着同样的事情或不同的事情? 3)如果它们是两个独立的东西,我怎样才能确定何时使用哪个?

2 个答案:

答案 0 :(得分:8)

当您需要关系参与关系时,将使用关联实体。

例如:

Enrollment relationship ERD

对于StudentCourse之间的正常多对多关系,我们只使用一颗钻石。但是,如果我们想将EnrollmentTeacher相关联,我们可以将Enrollment转换为关联实体。

Enrollment associative entity ERD

Phyiscally,我们的数据库看起来像这样:

Enrollment associative entity tables

使Enrollment成为Teacher是一个可选角色的三元关系具有相同的含义(除非它被非规范化,具有可为空的角色)。

答案 1 :(得分:0)

关联实体用于实现两个或多个实体之间的多对多关系。该实体由每个要连接的主键组成。 Chen模型中的复合实体用矩形内的菱形表示。