E-R图使我们在学习数据库,尤其是关系型数据库时的必备技能。今天就带大家整理下E-R图相关的知识点。
一、什么是E-R图
E-R图也称实体-关系图(Entity Relationship Diagram),提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。通俗点讲就是,当我们理解了实际问题的需求之后,需要用一种方法来表示这种需求,概念模型就是用来描述这种需求。
二、E-R图中的基本元素
E-R图中有三大核心部分:实体(entity)、属性(attribute)、关系(relationship)!
- 实体(entity):数据模型中的数据对象,用长方体来表示,每个实体都有自己的实体成员(entity member)或者说实体对象(entity instance),实体成员(entity member)/实体实例(entity instance) 不需要出现在ER图中
- 实体集:具有相同属性的实体的集合称为实体集
- 弱实体:一个实体必须依赖于另一个实体存在,那么前者是弱实体,后者是强实体,弱实体必须依赖强实体存在
- 复合实体:也称联合实体或桥接实体,常常用于实现两个或多个实体间的M:N联系,它由每个关联实体的主玛组成,用长方体内加一个菱形来表示
- 属性(attribute):数据对象所具有的属性,用椭圆形表示,属性分为唯一属性( unique attribute)和非唯一属性,唯一属性指的是唯一可用来标识该实体实例或者成员的属性,用下划线表示,一般来讲实体都至少有一个唯一属性
- 键:在描述实体集的所有属性中,可以唯一标识每个实体的属性称为键。键也是属于实体的属性,作为键的属性取值必须唯一且不能“空置”
- 复合属性(composite attribute):指具有多个属性的组合,例如名字属性,它可以包含姓氏属性和名字属性
- 多值属性(multivalued attribute):一个实体的某个属性可以有多个不同的取值,例如一本书的分类属性,这本书有多个分类
- 派生属性(derivers attribute):是非永久性存于数据库的属性。派生属性的值可以从别的属性值或其他数据(如当前日期)派生出来,用虚线椭圆表示
- 可选属性(optional attribute):并不是所有的属性都必须有值,有些属性的可以没有值,这就是可选属性,在椭圆的文字后用(O)来表示
- 联系属性:联系属于用户表示多个实体之间联系所具有的属性,一般来讲M:N的两个实体的联系具有联系属性,在1:1和1:M的实体联系中联系属性并不必要
- 关系(relationship):用来表现数据对象与数据对象之间的联系,用菱形来表示,关系可以分为以下三种:
- 1对1(1:1):指对于实体集A与实体集B,A中的每一个实体至多与B中一个实体有关系;反之,在实体集B中的每个实体至多与实体集A中一个实体有关系
- 1对多(1:N) :指实体集A与实体集B中至少有N(N>0)个实体有关系;并且实体集B中每一个实体至多与实体集A中一个实体有关系
- 多对多(M:N)指实体集A中的每一个实体与实体集B中至少有M(M>0)个实体有关系,并且实体集B中的每一个实体与实体集A中的至少N(N>0)个实体有关系
下面是这些基本元素在画图时所对应的符号表示:
熟练掌握上面的元素和对应图形之,就可以绘制E-R图了。
你学会了吗??
* 本页内容参考以下数据源:
- https://www.edrawsoft.cn/flowchart/er/
- https://blog.csdn.net/belen_xue/article/details/52763629
- https://baike.baidu.com/item/E-R%E5%9B%BE/304954