在 ER 图上,我可以有一个依赖多个实体的弱实体吗?

Posted

技术标签:

【中文标题】在 ER 图上,我可以有一个依赖多个实体的弱实体吗?【英文标题】:On ER Diagram, can I have a weak entity that's dependent on multiple entities? 【发布时间】:2021-12-30 20:33:06 【问题描述】:

我有一个名为“帐户”的实体,它包含用户名、电子邮件、密码和其他一些属性。

我有 2 个实体,分别名为“Applicant”和“Business_Owner” 实体“帐户”依赖于这两个,因为申请人可以有一个帐户,而企业主也可以有一个帐户。 它的逻辑设计是什么?

【问题讨论】:

因此帐户和申请人具有 1:1 的关系,帐户和企业主也是如此。你的问题是如何实现这个?作为一个合乎逻辑的设计,它似乎还可以;你到底有什么问题? 【参考方案1】:

您使用了一种旧的表示形式,我认为是 Peter Chen 发明 ERD 概念时使用的表示形式。 “弱”实体没有自己的标识符,但其标识符来自另一个实体(部分或全部)。如果“帐户”将公共字段组合在一起,似乎就是这种情况,则可以概括为“帐户”实体。我不认为 P. Chen 谈到了这个概念,但是弱实体可以说是“Applicant”和“Business_Owner”,因为它们有帐户标识符,但没有自己的标识符。

【讨论】:

【参考方案2】:

关于您的图表,我认为您所建模的是Account,它同时依赖于ApplicantBusinessOwner。根据您的描述,这不是您想要的。

一种解决方案可能是使用子类型对其进行建模,其中一个基类型具有一个帐户和两个专用子类型,供您的申请人和企业所有者使用。 如需更多信息,请查看this 文档。

一个示例逻辑模型:

【讨论】:

以上是关于在 ER 图上,我可以有一个依赖多个实体的弱实体吗?的主要内容,如果未能解决你的问题,请参考以下文章

我可以为多个表使用一个实体吗?

一个实体可以与另一个实体有多个关系吗?

ER模型中如何确定弱实体和强实体

两个 CoreData 实体之间可以有多个“对多”关系吗?

ER(实体关系)图的答案评估

可以在一个 JPQL 查询中传递多个命名实体图?