ERD - 实体关系图 - 复杂而棘手的关系

时间:2011-09-23 06:13:43

标签: database entity-relationship erd

以下是该方案。

两个完全不同的实体以相同的方式独立地与第三个实体相关。我们如何在ERD中代表它?或(增强型ER)

前:

  • 学生“BORROWS”预订(来自图书馆)
  • DEPARTMENT“BORROWS”BOOK(来自同一个图书馆)。

如果我两次定义'BORROWS'关系,那么就图表中的外观来说会很笨拙和笨拙,并且还会增加实现的复杂性。

同时,我不能宣布三元关系,因为STUDENT和DEPARTMENT在关系实例中不是相互关联的。

然而,我找不到更好的方法。

我该如何解决?

2 个答案:

答案 0 :(得分:1)

如果要相信维基百科,Enhanced ER允许继承。为什么你没有BORROWER实体(具有适当的关系),并且有STUDENT和DEPARTMENT子类吗?

答案 1 :(得分:0)

我一直有类似的问题 - 公司或个人可以订购产品。

您有一个order,可以属于personcompany - 那么您将这种关系链接到哪个?我认为订单会有一个companyId和一个personId外键,但是你怎么把它们排除在外呢?返回的数据不一定相同 - 例如company没有first name / last name字段。

我想可以通过返回name来完成,并且在person的情况下构建字符串firstname / lastname,并且company的情况使用companyname字段。