1.概念
E-R图也称实体-联系图(Entity Relationship Diagram),提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。它属于数据库设计中概念结构设计的一部分,反映了用户需求。
- 实体(entity)即数据模型中的数据对象,例如人、学生、音乐都可以作为一个数据对象。
- 属性(attribute)即数据对象所具有的属性,例如学生具有姓名、学号、年级等属性。属性分为唯一属性(键)与其他,唯一属性(键)就好比学生id,其他则是年龄、性别等不能唯一表示实体的属性。
- 联系(relationship)用来表现数据对象与数据对象之间的联系,例如学生的实体和成绩表的实体之间有一定的联系,每个学生都有自己的成绩表,这就是一种关系。
2.实体间的联系分类
- 1对1(1:1) :1对1关系是指对于实体集A与实体集B,A中的每一个实体至多与B中一个实体有关系。 如,一个学校只有一个正校长。
- 1对多(1:N)
:1对多关系是指实体集A与实体集B中至少有N(N>0)个实体有关系;并且实体集B中每一个实体至多与实体集A中一个实体有关系。
如多个学生选修同一门专业,则专业与学生关系则是1对多。 - 多对多(M:N) :对于两个实体集A和B,若A中每一个实体值在B中有多个实体值与之对应,反之亦然,则称实体集A与实体集B具有多对多联系。
如一个部门有多个员工,一个员工也可在多个部门任职。因此,员工与部门的工作关系为多对多。
3.ER图表现形式
- 矩形框:表示实体,填入实体名
- 菱形框:表示联系,填入联系名
- 椭圆形框:表示实体或联系的属性,框内填入属性名。对于主属性名,如id,在其下方画下划线
- 连线:实体与属性之间;实体与联系之间;联系与属性之间用直线相连,并在直线上标注联系的类型。如
4.ER图设计步骤
- 把现实中具有某种相同特性与行为的对象抽象为实体。对象与实体关系:is a member of,对象的属性与对象关系:is a part of。
- 属性不可再分,属性不能与其他实体具有联系,需求分析,进行实体考查,再模拟场景,看联系是否多余。