|
|
|
尽管基本的E-R模型是对大多数数据库特征建模,但数据库某些情况下的特殊语义,仅用基本E-R模型无法表达清楚。在这一节中,将讨论扩充的E-R模型,包括弱实体、特殊化、概括和聚集等概念。
|
|
|
|
|
|
在现实世界中有一种特殊的依赖联系,该联系是指某实体是否存在对于另一些实体具有很强的依赖关系,即一个实体的存在必须以另一个实体为前提,而将这类实体称为弱实体。例如某企业职工与家属的联系,家属总是属于某职工的,若某职工离职将其从职工关系中删除,家属也随即删除,那么家属属于“弱实体”,职工与家属之间的“所属”联系属于依赖联系。
|
|
|
|
在扩展的E-R图中,弱实体用双线矩形框表示。下图为职工与家属的E-R图。
|
|
|
|
|
|
|
|
|
|
前面已经介绍了,实体集是具有相同属性的实体集合。但在现实世界中,某些实体一方面具有一些共性,另一方面还具有各自的特殊性。这样,一个实体集可以按照某些特征区分为几个子实体。
|
|
|
设有实体集E,如果S是E的某些真子集的集合,记为 ,则称S是E的一个特殊化,E是S1、S2、…、Sn的超类,S1、S2、…、Sn称为E的子类。
|
|
|
如果 ,则称S是E的全特殊化,否则是E的部分特殊化。
|
|
|
|
如果Si∩Sj=Φ,i≠j,则S是不相交特殊化,否则是重叠特殊化。
|
|
|
|
在扩充的E-R模型中,子类继承超类的所有属性和联系,但是,子类还有自己特殊的属性和联系。超类-子类关系模型使用特殊化圆圈和连线的一般方式来表示。超类到圆圈有一条连线,连线为双线表示全特殊化,连线为单线表示部分特殊化;双竖边矩形框表示子类;有符号“∪”的线表示特殊化;圆圈中的d表示不相交特殊化;圆圈中的o表示重叠特殊化。
|
|
|
|
|
|
|