ER图中的角色用于什么?

时间:2015-03-24 18:16:31

标签: entity-relationship

以下数据库课程的书籍显示以下图片,以说明角色在ER图表中的工作方式:

'Prereq' stands for a prerequisite that the course has; another course that should be followed before the course can be followed.

但是,这并没有真正告诉我他们究竟使用了什么。为什么当course_id已经成为一个角色时,为什么它被显示为一个角色?为什么prereq_id不是关系prereq的描述性属性?

如果有人能向我解释在ER建模中使用了哪些角色并回答了我的两个问题,我将非常感激:)

注意:'先决条件'代表课程的先决条件;在课程开始之前应该遵循的另一门课程。

1 个答案:

答案 0 :(得分:0)

在我看来,这不是应该如何使用角色指标的一个很好的例子。它们可以通过提供有关每个连接实体如何与关系关联的更多信息来提高 ER 图的可读性。

在这个例子中,我会选择更像requires而不是course_idrequired by而不是prereq_id< /强>。这样,它提供了有关线条含义的附加信息。在这个例子中,它没有太大区别,但在其他情况下,这些角色指示符可能有助于在某种程度上澄清关系的语义是什么,特别是当仅用关系名称很难明确指定时。

编辑:我发现了这个例子,它与我上面解释的方式有些不同,但它是如何使用角色指标的一个很好的例子:

Role indicators example