1、ER模型模型 三个世界 概念模型概念模型:把现实世界转换为信息世界的模型把现实世界转换为信息世界的模型,E-R模型模型实施模型实施模型:把信息世界转化为数据世界使用的模型把信息世界转化为数据世界使用的模型,关系模型关系模型事物类事物性质实体集实体属性文件记录数据项(字段)现实世界信息世界数据世界(机器世界)数据模型数据模型 信息世界的基本概念信息世界的基本概念 1)实体实体(Entity):是是指指客客观观存存在在并并可可以以相相互互区区别别的的事事物物。实实体体可可以以是是具具体体的的人人、事、物,也可以是抽象的概念和联系。事、物,也可以是抽象的概念和联系。2)属属性性(Attribute)
2、:具具有有的的某某一一特特性性称称为为实实体体的的属属性性,一一个个实实体体有有若干个属性来描述。若干个属性来描述。3)域)域(Domain):属性的取值范围称为该属性的域。:属性的取值范围称为该属性的域。4)实实体体型型(Entity Type):具具有有相相同同属属性性的的实实体体成成为为同同型型实实体体,用用实实体名及其属性名的集合来抽象和刻画同类实体,称为实体型。体名及其属性名的集合来抽象和刻画同类实体,称为实体型。5)实体集)实体集(Entity Set):同型实体的集合称为实体集。:同型实体的集合称为实体集。数据模型数据模型 )联系)联系(Relationship):在现实世界中,
3、事物内部及事物之间是普遍:在现实世界中,事物内部及事物之间是普遍联系的,这些联系在信息世界中表现为实体型内部各属性之间的联联系的,这些联系在信息世界中表现为实体型内部各属性之间的联系以及实体型之间的联系。两个实体型之间的联系可以分为三类:系以及实体型之间的联系。两个实体型之间的联系可以分为三类:一对一联系一对一联系(1:1)例例如如,如如果果一一个个商商品品只只卖卖给给一一个个顾顾客客,一一个个顾顾客客也也只只能能购购买买一一个个商商品,则商品与顾客之间具有一对一的联系。品,则商品与顾客之间具有一对一的联系。一对多联系一对多联系(1:n)例例如如,一一个个人人可可以以有有多多个个移移动动电电话
4、话号号码码,但但一一个个电电话话号号码码只只能能卖卖给给一个人。人与移动电话号码之间的联系就是一对多的联系。一个人。人与移动电话号码之间的联系就是一对多的联系。多对多联系多对多联系(m:n)例例如如,一一门门课课程程同同时时可可以以由由若若干干学学生生选选修修,而而一一个个学学生生同同时时也也可可以以选修若干门课程,课程与学生之间的联系是多对多的联系。选修若干门课程,课程与学生之间的联系是多对多的联系。数据模型数据模型 2.概念模型的表示方法:概念模型的表示方法:实体实体联系方法联系方法(Entity-Relationship),该方法用,该方法用E-R图来描述现实世界的概念模型。图来描述现实
5、世界的概念模型。E-R图提供了表示实体型、图提供了表示实体型、属性和联系的方法:属性和联系的方法:实体型:用矩形表示,矩形框内写明实体名。实体型:用矩形表示,矩形框内写明实体名。属属性性:用用椭椭圆圆表表示示,椭椭圆圆内内写写明明属属性性名名,用用无无向向边边将将属属性性与实体连起来。与实体连起来。联联系系:用用菱菱形形表表示示,菱菱形形框框内内写写明明联联系系名名,用用无无向向边边与与有有关关实实体体连连接接起起来来,同同时时在在无无向向边边上上注注明明联联系系类类型型。需需要要注注意的是,联系也具有属性,也要用无向边与联系连接起来。意的是,联系也具有属性,也要用无向边与联系连接起来。E-R
6、模型的组成要素及表示方法 1E-R图的组成要素及其画法图的组成要素及其画法实体名联系名属性名实体表示属性表示联系表示E-RE-R模型的组成要素及表示方法模型的组成要素及表示方法 2 2实体间不同联系情况的实体间不同联系情况的E-RE-R图表示法图表示法联系分为联系分为:一对一一对一(1:1)(1:1)、一对多、一对多(1:n)(1:n)、多对多、多对多(m:n)(m:n)【例例1 1】假设某学院有若干个系,每个系只有一个主任。主任和系之间是一假设某学院有若干个系,每个系只有一个主任。主任和系之间是一对一的关系。对一的关系。主任和系的属性分别如下:主任和系的属性分别如下:主任主任编号,姓名,年龄
7、,学历编号,姓名,年龄,学历;系系系编号,系名系编号,系名 主任和系之间是一个管理关系主任和系之间是一个管理关系 解:解:描述主任和系之间的描述主任和系之间的E-R图可如下图:图可如下图:1主任系管理1姓名年龄学历编号系编号系名【例例 2 2】两个实体集之间的一对多的联系的绘制方法。两个实体集之间的一对多的联系的绘制方法。假设在某仓库管理系统中,有两个实体集:仓库和商品。仓库用假设在某仓库管理系统中,有两个实体集:仓库和商品。仓库用来存放商品,且规定一类商品只能存放在一个仓库中,一个仓库可以来存放商品,且规定一类商品只能存放在一个仓库中,一个仓库可以存放多件商品。仓库和商品之间是一对多的联系。
8、存放多件商品。仓库和商品之间是一对多的联系。仓库和商品的属性分别如下:仓库和商品的属性分别如下:仓库仓库仓库号,地点,面积仓库号,地点,面积 商品商品商品号,商品名,价格商品号,商品名,价格 在存放联系中要反映出存放商品的数量。在存放联系中要反映出存放商品的数量。解:解:描述仓库和商品之间的描述仓库和商品之间的E-R图可如下图所示图可如下图所示 1仓库商品存放n地点面积仓库号商品号价格数量商品名【例例 3 3】两个实体集之间的多对多的联系的绘制方法。两个实体集之间的多对多的联系的绘制方法。假设在某教务管理系统中,一个教师可以上多门课,一门课也假设在某教务管理系统中,一个教师可以上多门课,一门课
9、也可以由多个老师去上。教师和课程之间是多对多的联系。可以由多个老师去上。教师和课程之间是多对多的联系。教师和课程可用以下属性来描述:教师和课程可用以下属性来描述:教师教师教师号,教师名,职称教师号,教师名,职称 课程课程课程号,课程名课程号,课程名 在在“讲授讲授”联系中应能反映出教师的授课质量。联系中应能反映出教师的授课质量。解:解:描述教师和课程之间的描述教师和课程之间的E-R图可如下图所示。图可如下图所示。m教师课程讲授n教师名职称教师号课程号班级质量课程名ER图的设计方法图的设计方法 E-RE-R图通常都应经过以下两个阶段:图通常都应经过以下两个阶段:(1 1)针对每一用户画出该用户信
10、息的局部)针对每一用户画出该用户信息的局部E ER R图,确定该用户视图的图,确定该用户视图的实体、属性和联系。需注意的是:能作为属性的就不要作为实体,这实体、属性和联系。需注意的是:能作为属性的就不要作为实体,这有利于有利于E ER R图的简化。图的简化。(2 2)综合局部)综合局部E ER R图,生成总体图,生成总体E ER R图。在综合过程中,同名实体图。在综合过程中,同名实体只能出现一次,还要去掉不必要的联系,以便消除冗余。一般来说,只能出现一次,还要去掉不必要的联系,以便消除冗余。一般来说,从总体从总体E ER R图必须能导出原来的所有局部视图,包括实体、属性和联图必须能导出原来的所
11、有局部视图,包括实体、属性和联系。系。【例例 4 4】某学校管理系统中有三个部门:后勤部、学生处和财务处。某学校管理系统中有三个部门:后勤部、学生处和财务处。后勤部用来管理学生的住宿;教务处用来管理学生选课和教师任课;后勤部用来管理学生的住宿;教务处用来管理学生选课和教师任课;财务处用来管理发放教师的工资。财务处用来管理发放教师的工资。后勤部涉及到的实体及实体之间的联系如下:后勤部涉及到的实体及实体之间的联系如下:后勤部涉及到的实体及实体之间的后勤部涉及到的实体及实体之间的联系如下:联系如下:学生:属性有学号、姓名、性别、年龄、学生:属性有学号、姓名、性别、年龄、专业和入学时间专业和入学时间
12、宿舍:楼号、房间、档次宿舍:楼号、房间、档次联系:联系:学生与宿舍的联系是一个学生只能住在一学生与宿舍的联系是一个学生只能住在一个宿舍个宿舍一个宿舍能住多个学生一个宿舍能住多个学生学生住宿要交租金。学生住宿要交租金。教务处涉及到的实体及实体之间的联系如下:教务处涉及到的实体及实体之间的联系如下:学生:属性有学号、姓名、性别、年龄、专业和入学时学生:属性有学号、姓名、性别、年龄、专业和入学时间间 教师:属性有教师号、姓名、性别、职称、专业教师:属性有教师号、姓名、性别、职称、专业 课程:属性有课程号、课程名、学时数、专业课程:属性有课程号、课程名、学时数、专业联系:联系:一个学生可以选多门课一个
13、学生可以选多门课一门课可以由多个学生选修一门课可以由多个学生选修一个教师可以教多门课一个教师可以教多门课一门课也可以由多个老师教一门课也可以由多个老师教学生选修某门课有一个成绩学生选修某门课有一个成绩教师教某门课有一个质量评价。教师教某门课有一个质量评价。财务处涉及到的实体及实体之间的联系如下:财务处涉及到的实体及实体之间的联系如下:教师:属性有教师号、姓名、性别、职称、专业教师:属性有教师号、姓名、性别、职称、专业工资:属性有基本工资、加班工资、扣税、工资编号工资:属性有基本工资、加班工资、扣税、工资编号联系:联系:一个教师只能领一份工资一个教师只能领一份工资一份工资只能由一个教师领一份工资
14、只能由一个教师领领工资时应注明是某月工资。领工资时应注明是某月工资。n学生宿舍住1租金学生姓名专业学号宿舍楼号档次年龄性别入学时间房间号(a)后勤部的局部E-R图 教师姓名职称教师号课程课程号学时数课程名性别专业专业m教师课程讲授n质量学生选修mn成绩(b)教务处的局部E-R图(学生同(a)图)工资扣税基本工资加班工资工资编号工资教师领11月份1m学生住宿舍n1教师课程选修mn讲授n领工资1(c)财务处的局部E-R图(教师同(b)图)某学校管理系统的全局E-R图 假设一个学校存在以下信息假设一个学校存在以下信息(1)对象)对象1-系系包含属性:系名、系主任名字、专业数、教师人数、学生人数包含属
15、性:系名、系主任名字、专业数、教师人数、学生人数(2)对象)对象2-系主任系主任包含属性:姓名、性别、出生年月、从教年限、管理系部包含属性:姓名、性别、出生年月、从教年限、管理系部(3)对象)对象3-教师教师包含属性:教工号、姓名、性别、出生年月、政治面貌、所在系部包含属性:教工号、姓名、性别、出生年月、政治面貌、所在系部(4)对象)对象4-学生学生包含属性包含属性:学号、姓名、性别、出生年月、学历、任教系部学号、姓名、性别、出生年月、学历、任教系部假设一个系只有一个系主任,一个系主任只能管理一个系;一个系有假设一个系只有一个系主任,一个系主任只能管理一个系;一个系有多个教师,每个教师只能规划到一个系;一个教师为多名学生授课,多个教师,每个教师只能规划到一个系;一个教师为多名学生授课,每名学生有多个教师上课。请根据这些信息,画出他们的每名学生有多个教师上课。请根据这些信息,画出他们的E-R模型。模型。