0

我已经制作 ERD 很长时间了,但是我现在遇到了一个独特的案例,如下*:

  1. 每个帐户都可以进行注册
  2. 每次注册都需要接受期
  3. 每次注册至少需要 1 个程序或更多
  4. 注册两种UUI注册和SEMAS UI注册注册可以是UUI 注册SEMAS UI 注册,但不能同时是两者(不相交)
  5. SEMAS UI 注册必须是SEMAS S1 注册SEMAS S2 注册SEMAS S3 注册(不相交)。
  6. UUI 注册SEMAS S1 注册记录注册人Prior School
  7. SEMAS S2 注册SEMAS S3 注册记录注册人Prior University

从描述中我们知道Registration是一个弱实体,因为没有AccountAcceptance PeriodProgram ,它就无法存在。但是注册在这里有专长。

所以问题是:

  1. 我是否可以将UUI 注册SEMAS UI 注册建模为弱实体注册的子类?

  2. 如果允许,我如何为它们建模?也是作为弱实体还是作为强实体?

感谢您的所有帮助!

*忽略属性

4

1 回答 1

1

虽然弱实体集对其父实体集具有存在依赖关系,但存在依赖关系并不自动意味着实体集是弱实体集。可以要求常规实体集完全参与关系,这同样强加了存在依赖性。

要识别弱实体集,请查看它们是如何识别的。弱实体集的身份/主键将是其父级身份/主键的超集。

没有限制来防止弱实体集具有子类型。但是,我还没有看到任何关于如何在 ER 图上表示它们的示例。我倾向于以与它们的父实体集(即弱实体集)相同的方式绘制它们,因为它们具有相同的身份。另一个原因是在经典 ER(在用于子类型化的 EER 表示法之前)中,表示子类型的唯一方法是作为没有弱键的弱实体集。

于 2017-04-14T17:13:57.573 回答