识别is-a关系中的强弱实体

问题描述 投票:0回答:1

在下面的ER图中,我应该找出强弱实体。 enter image description here

据我所知,只有PERSON和INSURANCE_COMPANY才是强大的实体。

患者不能在没有医生的情况下存在(由于最小基数为1)因此它是一个弱实体。同样,没有DEPARTMENT,STAFF也不能存在,反之亦然。因此,它们都是弱实体。由于STAFF很弱,它的所有子类型(SUPPORT_STAFF,NURSE,DOCTOR)也必须是弱实体,对吧?

我的理解是正确的还是我错过了什么?

database database-design entity-relationship erd
1个回答
2
投票

弱实体集不是由存在依赖性决定的。常规实体集可以完全参与关系,因此也存在对另一个实体集的存在依赖性。

你需要看的是身份。常规实体集由其自己的属性标识。弱实体集通常部分地由另一个实体集标识。

在您的图表中,DEPARTMENT,PERSON,INSURANCE_POLICY和INSURANCE_COMPANY是描述常规实体集的实体关系。这些表中的每一个都有简单的主键(Dept#,PersonID,Policy#和Co#,如果我正确解释它,虽然没有指示PK)。

其他表(STAFF,PATIENT,SUPPORT_STAFF,NURSE,DOCTOR)描述了Person的子类型。这些子类型是否是弱实体集是值得商榷的。 Chen的原始论文,其中描述了常规和弱实体集,不包括子类型的概念。子类型是子集,而不是单独的实体集。然而,弱实体集提供了在扩展的ER符号变得可用之前表示子类型的手段(即,没有弱键的弱实体集)。在支持子类型的EER模型中,最好使用“弱实体集”来仅指代其主键除了另一个实体集的键之外还包含弱键的实体集。这里的典型示例是订单项,通常由发票/收据编号以及行号标识。

在原始的ER模型中,我假设您有4个常规实体集,对应于4个实体关系DEPARTMENT,PERSON,INSURANCE_POLICY和INSURANCE_COMPANY,以及5个弱实体集,对应于图中的5个子类型关系。但是,在具有不同子类型概念的EER模型中,我认为您有4个常规实体集且没有弱实体集。

© www.soinside.com 2019 - 2024. All rights reserved.