E-R图是什么?
关于概念模型的表示方法有很多,最著名的是实体-联系方法,简称E-R图(Entity-Relationship Approach)。E-R图具有以下优点: 能非常自然地描述现实世界; 图形结构简单; 设计者和用户易理解,并且可以互相交流; 它是数据库设计的中间步骤,易于向数据模型转换。
01、E-R图
1) E-R图的图形符号
方框: 表示一个实体集。在框内写上实体集的名字。
菱形框: 表示联系。菱形框内标明联系名,与其相关的实体集之间用箭头表示,一个箭头代表为1,两个箭头代表为多(说明: 有不少书中用无向边连接,且在连线边上标明联系类型)。
←◇→表示1∶1的联系
←◇→→表示1∶n的联系
←←◇→→表示m∶n的联系
椭圆框: 表示属性。在框内写上属性的名字,并用无向边连向与其相关的实体集或联系。
在E-R图中,有时为了突出各实体集之间的联系,可以先画出实体集及其属性,然后重点画出实体之间的联系,如图1和图2所示。
■ 图1 实体之间的联系
■ 图2 实体之间的联系
2) 绘制E-R图的步骤
第一步: 通过对现实世界的分析、抽象以后,找出实体集及其属性。
第二步: 找出实体集之间的联系。
第三步: 找出实体集联系的属性。
第四步: 绘制E-R图。绘制E-R图时一般先绘制局部E-R图,然后绘制全局E-R图,详细步骤见数据库设计。
例如,下面以教学情况为例,进行E-R图设计。
(1) 找出相关实体集: 学生(S),教师(T),课程(C),院系(D)。
每个实体的属性分别如下。
S: 学号,学生姓名,出生日期,专业,班级。
T: 编号,教师姓名,职称,所在教研室。
C: 课程号,课程名称,学时,考核方式。
D: 院系代号,院系名称。
(2) 找出实体集之间的联系。
S与C之间有联系,且为m∶n,因为一个学生可以学习很多门课程,反过来一门课程可以被多个学生所学习。
T与C之间有联系,且为m∶n,因为一个教师可以讲授很多门课程,反过来一门课程可以被多个教师所讲授。
D与S之间有联系,且为1∶n,因为一个院系可以有很多学生,但是一个学生只属于一个院系。
D与T之间有联系,且为1∶n,因为一个院系可以有很多教师,但是一个教师只属于一个院系。
(3) 找出实体集之间联系的属性。
S与C之间联系的结果用成绩表示。
T与C之间联系以讲授哪一个班级来表示。
(4) 绘制E-R图。
当E-R图比较复杂时,为了使E-R图简洁,可以使属性不在E-R图中出现,即单独画出每一个实体及实体属性,在E-R图中仅画出实体集和它们之间的联系,在E-R图中每一个实体只允许出现一次,如图3所示。
■ 图3 教学情况E-R图
注意 / E-R图的设计不是唯一的,例如,在分析现实世界时,考虑问题有这样的抽象,一个院系有很多专业,一个专业有很多班级,一个班级有很多学生……,那么这个时候的E-R图和上述就有区别了(大家可以自己画出满足上述要求的E-R图)。
- 点赞
- 收藏
- 关注作者
评论(0)