【问题标题】:Bridging entity from subtype entity ERD design从子类型实体 ERD 设计中桥接实体
【发布时间】:2016-10-03 08:19:08
【问题描述】:

我有两个涉及子类型的 ERD 示例。我似乎无法在网上或教科书中找到任何关于将其他实体连接到子类型以及从子类型继承键的程度(如果有的话)的确切信息。有眼光的人可能会注意到我最近问了一个关于亚型的类似问题,但这是针对不同的情况,到目前为止,我只收到了另一个问题的转介,该问题只解释了我不需要的亚型的基础知识——我觉得是一个更高级的主题来解决。

我的具体问题是我需要知道是否允许名为 ENROLLMENT 的桥接实体从 STUDENT 实体(PATRON 的子类型)继承 PK/FK。如果是这样,是否允许 PatronNumber 和/或 StudentNumber 属性。

这两个 ERD 示例略有不同。版本 1 使用来自 Student 子类型的 PatronNumber。版本 2 包括另一个称为 StudentNumber 的 PK。可以添加为 PK 并且可以从中引用 ENROLLMENT 吗?如果有的话,哪个更好?

干杯!

【问题讨论】:

    标签: database database-design erd


    【解决方案1】:

    首选第一个版本,因为只有一个值 PatronNumber,您可以通过一次连接获取有关学生的所有信息,而在第二种情况下,您需要执行两次连接。

    例如,假设您需要知道注册到课程编号 3 的所有学生的姓名:您可以简单地在 Enrollment 和 Patron 之间执行连接,而在第二种情况下,您需要在 Enrollment 之间进行连接和学生,然后在学生和赞助人之间。

    如果您的应用程序明确需要不同于 PatronNumber 的 StudentNumber,您可以简单地将属性添加到 Student,并声明它是唯一的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-14
      • 1970-01-01
      相关资源
      最近更新 更多