E-R模型设计

概念设计任务

概念设计(E-R模型):根据需求分析规格说明书完成如下任务:

  • 定义实体集及属性,实体集的主码,并用数据字典描述实体集;

  • 定义联系集及属性,联系集的主码,联系的映射基数及参与约束,联系中实体的角色,并用E-R图描述被建模的联系集;

  • 分析初步E-R图中是否存在依赖约束、多值联系,并将其建模为依赖实体集或弱实体集

  • 利用扩展E-R特征对对象进行分类及聚合(建模为联系实体集);

  • 多元联系转化为二元联系进行建模(联系实体集、依赖实体集或弱实体集);

  • 去除冗余数据,并保证满足所有数据需求不冲突;

  • 对照需求分析规格说明书,检查E-R模型,看其是否包含来所有数据、能否满足所有功能需求等。

E-R模型转化方法

E-R模型(概念建模)关系模型(逻辑建模)都是对现实世界的抽象。而E-R模型只是描述数据库的概念模型,若要被关系数据库所接受,必须进行信息转化,即将E-R模型转化为关系数据库所支持的逻辑模型——数据库模式(关系模式的集合)

强实体集转化方法

将强实体集映射成关系模式很直接,只需将实体集的每个属性对应为关系模式的属性,实体集的码作为关系模式的码

弱实体集转化方法

联系集一般转化方法

一对多或多对一联系集的转化

可不转化为单独的关系模式,而采用下列方法转化:

  • 若A到B联系集为一对多联系,则在由B(多的一方)转化的关系模式中增加A的主码属性作为参照A主码的外码,同时联系属性也放入由B(多的一方)转化的关系模式中

  • 若A到B联系集为一对一联系,则将某一方的主码属性增加到另一方实体集所转化的关系模式中去(外码)

标识联系集的转化

不需转化为任何关系模式

复合属性转化方法

应为每个子属性创建一个单独的属性,而不是为复合属性自身创建一个单独的属性。

类层次转化两种方法

  • 父类实体集和所有的子类实体集分别转化为单独的模式。其中,父类实体集对应的关系模式属性为父类实体集的属性(即公共属性);而各子类实体集对应的模式由该子类实体集的特殊属性父类实体集的主码属性组成,各子类实体集的主码与父类实体集的主码相同

  • 只将所有的子类实体集转化为关系模式,其属性由父类实体集的公共属性各子类实体集的特殊属性组成。

聚合的转化方法

  • 聚合是一种抽象,内层联系集、外层联系集都是按其映射基数决定是否需要单独转化为一个独立的关系模式(多对多联系集才需要)。

  • 外层联系集的主码根据映射基数不同分别由内层联系集(即联系实体集)的主码外层实体集的主码按照不同方式产生。

内外层联系都为多对多
内层联系集一对多,外层联系集多对多
内层联系多对多,外层联系多对一
内层联系多对多,外层联系一对多
内层联系一对多,外层联系多对一
内层联系一对多,外层联系一对多

Last updated