E/R图

名称图形
实体集矩形
属性椭圆
关系菱形
弱实体集两个矩形

关系的一些分类

多对一(many to one)

至多与一个对应,可以为零

粗略的理解是原像可以是多个或零个

一对一(one to one)

至多一个对应,可以为零

粗略的理解是原像可以是一个或零个

多对一和一对一使用尖箭头来表示

正好一个(Exact one)

正好一个使用圆箭头来表示

正好一个也分为多对一和一对一

这时与上面的区别为没有零个的情况

有时候关系上也可以添加属性

Roles (角色)

在一个关系中,实体集充当不同的角色,只需要在连线上标上充当的角色

Subclass (子类)

E/R图里的子类不允许多重继承,只允许有一个父类

E/R图中的子类也有一个规则:任何在子类的实体也在父类中出现。

同时根节点的键是子节点的键

弱实体集

弱实体集需要两个矩形来表示

支持联系需要两个菱形

弱实体集的键由自己的键和为它提供支持的实体集的键组成。注意:弱实体的属性只有自己的属性加上为它提供支持的实体集的键

实体集的定义应该满足以下两个要求

合并两个关系

子类有三种转化成表的方法

  1. 面向对象
  2. 使用空值
  3. E/R类型

面向对象就是如果在子类里面保存的元组就不在父类中保存了。子类的属性包括了父类的所有属性。

使用空值是将信息只记录在子类,如果父类中元组缺失某些属性,则用null替代。一个元组出现在子类则出现在父类。

E/R类型是将各个实体集分别记录。子类的属性只包括父类的键。并且一个元组出现在子类则出现在父类。

支持联系没有属性是多余的

0 Shares:
发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

You May Also Like