- SQL Server 2012 数据库教程(第3版)
- 郑阿奇 刘启芬 顾韵华主编
- 1056字
- 2020-06-27 14:44:22
1.2.1 概念结构设计
通常,把每一类数据对象的个体称为“实体”,而每一类对象个体的集合称为“实体集”。例如,在管理学生所选课程的成绩时,主要涉及“学生”和“课程”两个实体集。
其他非主要的实体可以很多,例如,班级、班长、任课教师、辅导员等。把每个实体集涉及的信息项称为属性。就“学生”实体集而言,它的属性有学号、姓名、性别、出生时间、专业、总学分、备注;“课程”实体集的属性有课程号、课程名、开课学期、学时和学分。
实体集“学生”和实体集“课程”之间存在“选课”的关系,通常把这类关系称为“联系”,将实体集及实体集联系的图称为E-R模型。E-R模型的表示方法如下。
(1)实体集采用矩形框表示,框内为实体名。
(2)实体的属性采用椭圆框表示,框内为属性名,并用无向边与其相应实体集连接。
(3)实体间的联系采用菱形框表示,联系以适当的含义命名,名字写在菱形框中,用无向边将参加联系的实体矩形框分别与菱形框相连,并在连线上标明联系的类型,即1︰1、1︰n或m︰n。
(4)如果一个联系有属性,则这些属性也应采用无向边与该联系相连接起来。
因此,E-R模型也称为E-R图。关系数据库的设计者通常使用E-R图来对信息世界建模。从分析用户项目涉及的数据对象及数据对象之间的联系出发,到获取E-R图的这一过程就称为概念结构设计。
两个实体集A和B之间的联系可能是以下3种情况之一。
1. 一对一的联系(1:1)
A中的一个实体至多与B中的一个实体相联系,B中的一个实体也至多与A中的一个实体相联系。例如,“班级”与“班长”这两个实体集之间的联系是一对一的联系,因为一个班只有一个班长,反过来,一个班长只属于一个班。“班级”与“班长”两个实体集的E-R模型如图1.5所示。
图1.5 “班级”与“班长”两个实体集E-R模型
2. 一对多的联系(1:n)
A中的一个实体可以与B中的多个实体相联系,而B中的一个实体至多与A中的一个实体相联系。例如,“班级”与“学生”这两个实体集之间的联系是一对多的联系,因为,一个班可有若干学生,反过来,一个学生只能属于一个班。“班级”与“学生”两个实体集的E-R模型如图1.6所示。
图1.6 “学生”与“班级”两个实体集的E-R模型
3. 多对多的联系(m:n)
A中的一个实体可以与B中的多个实体相联系,而B中的一个实体也可与A中的多个实体相
联系。例如,“学生”与“课程”这两个实体集之间的联系是多对多的联系,因为,一个学生可选多门课程;反过来,一门课程可被多个学生选修,每个学生选修了一门课以后都有一个成绩。“学生”与“课程”两个实体集的E-R模型如图1.7所示。
图1.7 “学生”与“课程”两个实体集的E-R模型