版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 第第4 4章章 数据库建模数据库建模 ( (实体实体- -联系模型联系模型) ) 认识自己认识自己n用用SWOT分析来了解自我:分析来了解自我:u StrengthsStrengths:自己的强项;:自己的强项;u WeaknessWeakness:自己需要改进的地方;:自己需要改进的地方;u OpportunitiesOpportunities:机会在那里;:机会在那里;u ThreatsThreats: 负面的因素。负面的因素。目目 录录弱实体集弱实体集 4.4数据库设计过程数据库设计过程 4.1E-R模型基本概念及表示模型基本概念及表示4.2约束约束4.3数据库概念设计实例数据库概念设
2、计实例大学选课系统大学选课系统4.7扩展扩展E-R特征特征4.5E-R建模问题建模问题4.6逻辑设计逻辑设计E-R模型转化为关系模型模型转化为关系模型4.8 概念设计任务概念设计任务 n 概念设计概念设计(即即E-R模型设计模型设计)主要是根据主要是根据需求分析规格需求分析规格说明书说明书完成如下任务完成如下任务:l定义定义实体集实体集及属性,实体集的及属性,实体集的主码主码,用,用E-R图及图及数据字典数据字典描述被建模的实体集;描述被建模的实体集;l定义定义联系集联系集及属性,联系集的及属性,联系集的主码主码,联系的映射基数及参,联系的映射基数及参与约束与约束,实体的角色,实体的角色,并用
3、并用E-R图描述被建模的联系集;图描述被建模的联系集;l分析初步分析初步E-R图中是否存在图中是否存在依赖约束依赖约束、多值联系多值联系?l利用扩展利用扩展E-R特征对对象进行特征对对象进行分类分类及及聚合聚合;l去除冗余数据去除冗余数据,并保证满足所有数据需求不冲突;,并保证满足所有数据需求不冲突;l对照需求分析规格说明书,对照需求分析规格说明书,检查检查E-R模型,看其模型,看其是否包含是否包含了所有数据、能否满足所有功能需求了所有数据、能否满足所有功能需求等。等。大学选课管理系统需求分析大学选课管理系统需求分析 n系统需求分析系统需求分析l系统目标及边界系统目标及边界l功能需求分析功能需
4、求分析 l数据需求及业务规则分析数据需求及业务规则分析l数据约束分析数据约束分析大学选课管理系统的目标及边界大学选课管理系统的目标及边界n 随着学分制的普及,大学选课管理系统已成为大学随着学分制的普及,大学选课管理系统已成为大学信息管理系统中的重要组成部分。信息管理系统中的重要组成部分。n 本系统本系统面向全体师生面向全体师生,对,对排课排课( (每门课程开几个教每门课程开几个教学班?谁来任教?上课时间与教室安排学班?谁来任教?上课时间与教室安排) )、选修及选修及成绩进行集中管理成绩进行集中管理,以实现,以实现排课、选课及成绩管理排课、选课及成绩管理的科学化、系统化和自动化的科学化、系统化和
5、自动化,最大限度地为老师和最大限度地为老师和学生提供方便和提高管理效率学生提供方便和提高管理效率。 n 学院学院基本信息管理:基本信息管理:学院基本信息录入、维护与查询学院基本信息录入、维护与查询n 班级班级基本信息管理基本信息管理:班级基本信息录入、维护与查询:班级基本信息录入、维护与查询n 学生学生基本信息管理:基本信息管理:学生基本信息录入、维护与查询学生基本信息录入、维护与查询n 教师教师基本信息管理:基本信息管理:教师基本信息录入、维护与查询教师基本信息录入、维护与查询n 课程课程基本信息管理:基本信息管理:课程基本信息录入、维护与查询课程基本信息录入、维护与查询n 教室教室基本信息
6、管理:基本信息管理:教室基本信息录入、维护与查询教室基本信息录入、维护与查询n 排课管理:排课管理:根据开课计划实现自动或半自动的排课根据开课计划实现自动或半自动的排课n 学生选课:学生选课:提供选课、退选和改选功能提供选课、退选和改选功能n 课表查询:课表查询:提供不同人员以不同方式查询选课信息提供不同人员以不同方式查询选课信息n 成绩管理:成绩管理:学生考试成绩录入、修改及查询学生考试成绩录入、修改及查询大学选课管理系统的功能需求分析大学选课管理系统的功能需求分析大学大学学分制管理系统学分制管理系统的功能需求?的功能需求?数据需求及业务规则分析数据需求及业务规则分析 n 学院学院需要记录需
7、要记录学院编号学院编号、学院名称学院名称、学院地址学院地址等信息,由等信息,由学院编号学院编号唯一标识唯一标识n 教师教师要求记录要求记录教师编号教师编号、教师姓名教师姓名、职称职称、学位学位等信息,等信息,由由教师编号教师编号唯一标识唯一标识l一个一个学院学院可聘用多名可聘用多名教师教师,但一名,但一名教师教师只能属于一个只能属于一个学院学院n 班级班级需要记录需要记录班级编号班级编号、班级名称班级名称、年级年级、班级人数班级人数等信等信息,由息,由班级编号班级编号唯一标识唯一标识l一个一个学院学院有多个有多个班级班级,一个,一个班级班级只能归属于某一个只能归属于某一个学院学院l班级人数班级
8、人数为为派生属性派生属性,它的值可通过统计,它的值可通过统计学生学生实体集中属实体集中属于该班学生的人数而得到于该班学生的人数而得到 数据需求及业务规则分析数据需求及业务规则分析 n 学生学生需要存储需要存储学号学号、姓名姓名、性别性别、出生日期出生日期、家庭住址家庭住址、电话号码电话号码等信息,由等信息,由学号学号唯一标识唯一标识l家庭住址家庭住址由由省份省份、城市城市、街道街道组成组成复合属性复合属性;l电话号码电话号码可能有多个,如可能有多个,如宿舍电话宿舍电话、实验室电话实验室电话、移动电移动电话话等等多值属性多值属性;l年龄年龄可由生日推算出来可由生日推算出来派生属性,不作为存储属性
9、派生属性,不作为存储属性l学生学生可进一步分可进一步分本科生本科生和和研究生研究生两类,两类,本科生本科生需记录需记录个人个人兴趣兴趣,研究生研究生需记录需记录研究方向研究方向l一个一个班级班级有多名有多名学生学生,但一个,但一个学生学生只能属于某一个只能属于某一个班级班级l一个一个教师教师可以指导多名可以指导多名研究生研究生,但一个,但一个研究生研究生只能安排一只能安排一名指导名指导教师教师数据需求及业务规则分析数据需求及业务规则分析 n 课程课程需要记录需要记录课程号课程号、课程名称课程名称、课时课时、学分学分等信息,由等信息,由课程号课程号唯一标识唯一标识l一个一个学院学院可管理多门可管
10、理多门课程课程,但一门,但一门课程课程只能归属一个只能归属一个学院学院l课程课程之间需设置之间需设置先修要求先修要求,一门,一门主课程主课程至多可以指定一门至多可以指定一门先修课程先修课程,但一门,但一门先修课程先修课程可对应于多门可对应于多门主课程主课程 n 每门每门课程课程可以安排多个可以安排多个开课班开课班,开课班开课班需存储需存储开课班号开课班号、年份年份、学期学期等信息,等信息,开课班号开课班号为部分码为部分码l一个一个开课班开课班可安排多名可安排多名教师教师任教,需明确任教,需明确教师教师任教任教开课班开课班的的任教角色任教角色;一名;一名教师教师也可同时任教多个也可同时任教多个开
11、课班开课班l一个一个开课班开课班被多名被多名学生学生选修,每个选修,每个学生学生可选修多个可选修多个开课班开课班l一个一个学生学生同一学期同一学期不能选修不能选修同一门课程同一门课程的同一个的同一个开课班开课班多多次次;也不能选修也不能选修同一门课程同一门课程的多个不同的多个不同开课班开课班如何理解如何理解开课班开课班与与学生学生之间之间多对多联系的多对多联系的语义语义( (约束约束) )?数据需求及业务规则分析数据需求及业务规则分析n 教室教室需要记录需要记录教室编号教室编号、所在教学楼所在教学楼、电话号码、教室电话号码、教室类型、教室容量类型、教室容量等信息,由等信息,由教室编号教室编号唯
12、一标识唯一标识l一个一个教室教室可安排多个可安排多个开课班开课班,一个,一个开课班开课班可安排多个可安排多个时间时间和和教室教室上课,且上课,且每次上课每次上课可能安排在相同或不同的可能安排在相同或不同的教室教室l一个一个教室教室在在同一时间段同一时间段不允许安排多个不允许安排多个开课班开课班上课上课 (同一任课教师同一任课教师的的同一门课程同一门课程的多个的多个开课班开课班除外:除外:合班合班)n 一个一个学生学生在在同一时间段同一时间段不允许选修多个不允许选修多个开课班开课班 (重修课程是否除外?重修课程是否除外?)n 同一名同一名教师教师不允许在不允许在同一时间段同一时间段安排多个安排多
13、个不同课程不同课程的的开开课班课班或或非合班上课非合班上课的的相同课程相同课程的的开课班开课班n 教师教师在所任教的在所任教的开课班开课班考试结束后,需在规定的时间内考试结束后,需在规定的时间内将所任教学生的成绩录入系统,并要求记录将所任教学生的成绩录入系统,并要求记录登分日期登分日期如何理解如何理解教室教室与与开课班开课班之间之间多对多联系的语义多对多联系的语义?主要业务的局部建模主要业务的局部建模n 主要实体集有:主要实体集有:学院、班级、学院、班级、学生学生、教师教师、课程课程、教室、教室n 观察观察l 学生学生选修某学期的某门选修某学期的某门课程课程,只能从该学期该,只能从该学期该课程
14、课程实际开设实际开设的若干个的若干个开课班开课班中进行选修;中进行选修;l 教师教师安排教学任务,也是针对需开设的安排教学任务,也是针对需开设的开课班开课班进行分配;进行分配;l 学生学生通过选修某个通过选修某个开课班开课班来明确是哪位来明确是哪位(些些)教师教师给其授课;给其授课;l 一个一个学生学生可能会出现多次选修同一门可能会出现多次选修同一门课程课程的情况的情况(如如重修重修)。即即学生学生与与课程课程之间的之间的选课选课联系是联系是多值联系多值联系。学生学生课程课程选课选课- -任教任教教师教师多对多的三元联系集多对多的三元联系集n 学生学生、课程课程、教师教师之间的建模之间的建模l
15、引入引入开课班开课班弱实体集,它依赖于弱实体集,它依赖于课程课程实体集实体集l学生学生选修选修课程课程是指选择为其所开设的某个是指选择为其所开设的某个开课班开课班l某个某个开课班开课班需要安排任课需要安排任课教师教师。因此,。因此,学生学生与与教师教师之间之间的的授课授课联系就转化为通过联系就转化为通过开课班开课班与与教师教师之间的之间的任教任教联系联系来间接关联来间接关联教师教师学生学生Enroll课程课程排课排课CourseClass任教任教选修选修授课授课选课选课开课班开课班教师教师主要业务的局部建模主要业务的局部建模n 上课时间上课时间、上课地点上课地点的建模的建模l假设一个开课班可能
16、安排多个时间上课,且不同时间可能假设一个开课班可能安排多个时间上课,且不同时间可能安排在相同的或不同的教室上课,安排在相同的或不同的教室上课,则则排时间教室排时间教室联系集可联系集可能是能是多值联系多值联系。主要业务的局部建模主要业务的局部建模课程课程排课排课开课班开课班开课班号开课班号年份学期教室教室排时间排时间教室教室教室编号教室编号所在教学楼电话号码教室类型教室容量上课时间开课班开课班教室教室排时间排时间教室编号教室编号所在教学楼电话号码教室类型教室容量时间安排时间安排排教室排教室上课时间上课时间年份学期开课班号开课班号n 学生学生实体集的实体集的类层次类层次及研究生及研究生指导指导的建
17、模的建模主要业务的局部建模主要业务的局部建模学生学生本科生本科生研究生研究生研究方向兴趣爱好ISA教师教师指导指导n “录入成绩录入成绩”联系集的联系集的聚合聚合建模建模主要业务的局部建模主要业务的局部建模学生学生选课选课教师教师录入成绩录入成绩录入日期学生学生选课选课教师教师录入成绩录入成绩录入日期(a) 直接表示直接表示聚合聚合的的E-R建模建模(b) 通过通过联系实体集联系实体集的的E-R建模建模成绩成绩开课班开课班开课班开课班ISA本科生本科生研究生研究生选课选课录入成绩录入成绩录入日期包含包含班级班级设置设置图图4-38 简化的大学选课系统简化的大学选课系统E-R图图时间安排时间安排
18、排时间排时间教师教师任教任教任教角色 聘用聘用聘用日期学院学院归属归属开课班开课班排课排课课程课程先修要求先修要求主课程先修课程指导指导排教室排教室教室教室学生学生成绩选课选课 定义实体集及属性定义实体集及属性 n 学院学院:学院编号学院编号、学院名称学院名称、学院地址学院地址n 班级班级:班级编号班级编号、班级名称班级名称、年级年级、班级人数班级人数。l 班级人数班级人数为派生属性为派生属性 n 教师教师:教师编号教师编号、教师姓名教师姓名、职称职称、学位学位n 学生学生:学号学号、姓名姓名、性别性别、出生日期出生日期、家庭住址家庭住址、电话号码电话号码l 复合属性:复合属性:家庭住址家庭住
19、址省份省份、城市城市、街道街道l 多值属性:多值属性:电话号码电话号码n 本科生本科生、研究生研究生,它们具有,它们具有学生学生的所有属性,此外的所有属性,此外l 本科生本科生:个人兴趣个人兴趣l 研究生研究生:研究方向研究方向n教室教室:教室编号教室编号、所在教学楼所在教学楼、电话号码电话号码、教室类型教室类型、教室容量教室容量n课程课程:课程编号课程编号、课程名称课程名称、学分学分、课时数课时数n开课班开课班:开课班号开课班号、年份年份、学期学期、教室容量教室容量、选课人数选课人数l 开课班号开课班号为为部分码部分码,能够区分,能够区分同一门同一门课程课程在不同学期及同一学在不同学期及同一
20、学期期所开设的所开设的不同不同开课班开课班l 教室容量教室容量、选课人数选课人数是派生属性是派生属性 n时间安排时间安排:上课时间上课时间l 上课时间上课时间为为部分码部分码,能够区分,能够区分同一个同一个开课班开课班的的不同上课时间不同上课时间 定义实体集及属性定义实体集及属性 定义联系集及属性定义联系集及属性 n 设置设置联系集联系集:实体集:实体集学院学院与与班级班级之间的之间的一对多一对多联系集联系集l 表明一个表明一个学院学院可设置多个可设置多个班级班级,但一个,但一个班级班级只属于一个只属于一个学院学院n 归属归属联系集联系集:实体集:实体集课程课程与与学院学院之间的之间的多对一多
21、对一联系集联系集l 表明一门表明一门课程课程只归属于一个只归属于一个学院学院,但一个,但一个学院学院可管理多门可管理多门课程课程n 聘用聘用联系集联系集:实体集学院与教师之间的:实体集学院与教师之间的一对多一对多联系集联系集l 表明一个表明一个学院学院可聘用多名可聘用多名教师教师,但一名,但一名教师教师只能受聘于一个只能受聘于一个学院学院l 联系属性为联系属性为聘用日期聘用日期 n 包含包含联系集联系集:实体集:实体集班级班级与与学生学生之间的之间的一对多一对多联系集联系集l 表明一个表明一个班级班级可包含多名可包含多名学生学生,但一名,但一名学生学生只属于一个只属于一个班级班级n 排课排课标
22、识标识联系集联系集:课程课程与与开课班开课班弱实体集之间的弱实体集之间的一对多一对多联系集联系集l 表明一门表明一门课程课程可安排多个可安排多个开课班开课班,开课班号开课班号为为部分码部分码n 选课选课联系集联系集:学生与开课班之间的:学生与开课班之间的多对多多对多联系集联系集l 表明一个表明一个学生学生可选修多个可选修多个开课班开课班,且一个,且一个开课班开课班可包括多名可包括多名学生学生l 联系属性为联系属性为成绩成绩n 任教任教联系集联系集:教师教师与与开课班开课班之间的之间的多对多多对多联系集联系集l 表明一表明一教师教师可任教多个可任教多个开课班开课班,且一,且一开课班开课班可安排多
23、名可安排多名教师教师任教任教l 联系属性为联系属性为任教角色任教角色n 排时间排时间标识标识联系集联系集:开课班开课班与与时间安排时间安排弱实体集之间的弱实体集之间的一对多一对多联系集联系集l 表明一个表明一个开课班开课班可安排多个可安排多个上课时间上课时间,上课时间上课时间为为部分码部分码 定义联系集及属性定义联系集及属性 n 排教室排教室联系集联系集:弱实体集:弱实体集时间安排时间安排与与教室教室之间的之间的多对一多对一联系集联系集l 表明多个表明多个上课时间上课时间可安排在同一个可安排在同一个教室教室上课,但一个上课,但一个教室教室在一个在一个上课时间上课时间只能安排一个只能安排一个开课
24、班开课班上课上课n 指导指导联系集联系集:实体集:实体集教师教师与与研究生研究生之间的之间的一对多一对多联系集联系集l 表明一表明一教师教师可指导多名可指导多名研究生研究生,但一名,但一名研究生研究生只能安排一名指导只能安排一名指导教师教师n 先修要求先修要求联系集联系集:由:由具有具有先修课程先修课程角色和具有角色和具有主课程主课程角色的角色的课程课程实体之间的实体之间的一对多一对多联系集联系集l 表明一门表明一门主课程主课程至多指定一门至多指定一门先修课程先修课程,但一门,但一门先修课程先修课程可对应可对应于多门于多门主课程主课程 n 录入成绩录入成绩联系集联系集:实体集实体集教师教师与联
25、系集与联系集选课选课之间的之间的一对多一对多联系集联系集 l 联系属性为联系属性为录入日期录入日期 定义联系集及属性定义联系集及属性 定义数据字典定义数据字典 n 学院学院(Institute)实体集的数据字典如图实体集的数据字典如图4-39所示所示 属性名属性名含义含义类别类别域及约束域及约束实例实例instituteNo学院编号学院编号 主码主码char(2),由2位字母组成,代表学院的缩写。不允许取空值CSinstituteName学院名称学院名称varchar(30),不允许取空值计算机学院instituteAddress学院地址学院地址varchar(40)麦庐校园荟庐楼图图4-39
26、 学院学院(Institute)实体集的数据字典实体集的数据字典 定义数据字典定义数据字典 n 学生学生(Student)实体集的数据字典如图实体集的数据字典如图4-41所示所示 属性名属性名含义含义类别类别域及约束域及约束实例实例studentNo学号学号主码主码char(10),由10位数字字符组成,其中第1位数字代表学生类别,如:1-本科生,2-硕士研究生,3-博士研究生,4-独立学院本科生,5-专科生;接下来4位数字代表入学年份,最后5位数字为序号。不允许取空值1201100258studentName姓名姓名varchar(20),不允许取空值李小勇sex性别性别char(2),取值
27、范围:男, 女男birthday出生日期出生日期datetime1992-09-09phoneNumber电话号码电话号码多值多值varchar(13),每个电话号码由数字字符加连字符-组成186079199999rovince省份省份复合复合varchar(20),复合属性家庭住址的成分湖北省city城市城市复合复合varchar(20),复合属性家庭住址的成分武汉市street街道街道复合复合varchar(20),复合属性家庭住址的成分中山路56号图图4-41 学生学生(Student)实体集的数据字典实体集的数据字典 定义数据字典定义数据字典 n 选课选课(
28、Enroll)联系集的数据字典如图联系集的数据字典如图4-47所示所示 属性名属性名含义含义类别类别域及约束域及约束实例实例score成绩成绩smallint,0100之间的整数95recordDate录入日期录入日期 联系联系datetime,它是选课选课联系集与教师教师实体集之间的多对一联系集录入成绩录入成绩的联系属性2011-07-08图图4-47 选课选课(Enroll)联系集的数据字典联系集的数据字典进一步的思考?进一步的思考?n 班主任、学院领导、学校领导等的不同查询要求?班主任、学院领导、学校领导等的不同查询要求?n 学生所学专业?教学计划?课程类别?学生所学专业?教学计划?课程
29、类别?n 学生毕业要求?毕业资格审查?学生毕业要求?毕业资格审查?n 开课任务书?开课任务书?n 选课推荐(选课提醒)?选课推荐(选课提醒)?n 选课优先级?选课优先级?n 教材管理?教学资源管理?教材管理?教学资源管理?n 考试安排?考试安排?n 学生评教?学生评教?n 预警(亮黄牌)、劝其退学(亮红牌)?预警(亮黄牌)、劝其退学(亮红牌)?n 小结小结n 概念设计任务概念设计任务 n 下一步:把概念设计转为为逻辑设计!下一步:把概念设计转为为逻辑设计!目目 录录弱实体集弱实体集 4.4数据库设计过程数据库设计过程 4.1E-R模型基本概念及表示模型基本概念及表示4.2约束约束4.3数据库概
30、念设计实例数据库概念设计实例大学选课系统大学选课系统4.7扩展扩展E-R特征特征4.5E-R建模问题建模问题4.6逻辑设计逻辑设计E-R模型转化为关系模型模型转化为关系模型4.8E-R模型转化方法模型转化方法 n E-R模型模型(概念建模概念建模)和关系模型和关系模型(逻辑建模逻辑建模)都是对现实世界都是对现实世界的抽象。而的抽象。而E-R模型只是描述数据库的模型只是描述数据库的概念模型概念模型,若要被若要被关系数据库所接受,必须进行信息转化,即将关系数据库所接受,必须进行信息转化,即将E-R模型转模型转化为关系数据库所支持的逻辑模型化为关系数据库所支持的逻辑模型关系模式关系模式。 n 转化方
31、法转化方法l强实体集转化方法强实体集转化方法l弱实体集转化方法弱实体集转化方法l联系集转化方法联系集转化方法 l复合属性及多值属性转化方法复合属性及多值属性转化方法 l类层次转化方法类层次转化方法 l聚合转化方法聚合转化方法 E-R模型转化方法模型转化方法n 强实体集转化方法强实体集转化方法l将强实体集映射成关系模式很直接,将强实体集映射成关系模式很直接,只需将实体集的每只需将实体集的每个属性对应为关系模式的属性,实体集的码作为关系模个属性对应为关系模式的属性,实体集的码作为关系模式的码式的码。l设强实体集设强实体集E具有具有a1, a2, , an属性,其转化的关系模式定属性,其转化的关系模
32、式定义如下:义如下:关系模式名:关系模式名:E;属性集:属性集:a1, a2, , an;主码:实体集主码:实体集E的主码;的主码;外码:无。外码:无。n 例如,由实体集例如,由实体集课程课程Course转化的关系模式为(加下划线的转化的关系模式为(加下划线的属性表示它是主码成员):属性表示它是主码成员):lCourse (courseNo, courseName, creditHour, courseHour)E-R模型转化方法模型转化方法n 弱实体集转化方法弱实体集转化方法 l设弱实体集设弱实体集A具有属性集具有属性集a1, a2, , am,且,且p1, p2, , pk为为A的的部分码
33、部分码( pi a1, a2, , am, 1 i k, k m);B是是A所依所依赖的强实体集且主码为属性集赖的强实体集且主码为属性集b1, b2, , bn,则,则A转化的转化的关系模式定义如下:关系模式定义如下:关系模式名:关系模式名:A;属性集属性集: a1, a2, , am b1, b2, , bn;主码主码: b1, b2, , bn p1, p2, , pk;外码外码: 参照关系参照关系B的属性的属性b1, b2, , bn。n 例如,由弱实体集例如,由弱实体集开课班开课班CourseClass转化的关系模式转化的关系模式为为(外码属性成员用斜体表示外码属性成员用斜体表示):l
34、CourseClass (courseNo, cClassNo, year, semester, capacity, enrollNumber)E-R模型转化方法模型转化方法n 联系集一般转化方法联系集一般转化方法l设设R是一联系集,其描述性属性集为是一联系集,其描述性属性集为a1, a2, , am;参与;参与R的所有实体集的所有实体集ES的主码的并集形成属性集合的主码的并集形成属性集合b1, b2, , bn,则由,则由R转化的关系模式定义如下:转化的关系模式定义如下:关系模式名:关系模式名:R;属性集属性集: a1, a2, , am b1, b2, , bn;主码主码: 按按映射基数映
35、射基数对应规则确定对应规则确定;外码外码: 参照参与关系参照参与关系Ei ES及各自对应的主码属性及各自对应的主码属性b1, b2, , bn。E-R模型转化方法模型转化方法n 一对多或一对一联系集的转化一对多或一对一联系集的转化l可不转化为单独的关系模式可不转化为单独的关系模式,而采用下列方法转化:,而采用下列方法转化:若若A到到B联系集为联系集为一对多联系,则在由一对多联系,则在由B转化的关系模式中增转化的关系模式中增加加A的主码属性的主码属性(这些属性即为参照这些属性即为参照A主码的外码主码的外码)。例如,联系集例如,联系集聘用聘用(Engage)为实体集为实体集学院学院(Institu
36、te)与实体集与实体集教师教师(Teacher)之间的之间的一对多一对多联系集。联系集。 可转化为:可转化为: Teacher (teacherNo, tearcherName, title, degree, hireDate, instituteNo) 若若A到到B联系集为联系集为一对一联系,则将某一方的主码属性增加一对一联系,则将某一方的主码属性增加到另一方实体集所转化的关系模式中去到另一方实体集所转化的关系模式中去。n 标识联系集的转化标识联系集的转化l不需转化为任何关系模式不需转化为任何关系模式 E-R模型转化方法模型转化方法n 复合属性转化方法复合属性转化方法 l应为每个子属性创建一
37、个单独的属性,而不是为复合属性应为每个子属性创建一个单独的属性,而不是为复合属性自身创建一个单独的属性。自身创建一个单独的属性。 n 例如,由实体集例如,由实体集学生学生Student转化而来的关系模式为:转化而来的关系模式为:l Student (studentNo, studentName, sex, birthday, province, city, street)address属性被其复合属性属性被其复合属性province, city, street代替。代替。E-R模型转化方法模型转化方法n 多值属性转化方法多值属性转化方法 l创建一个新的模式,其属性为多值属性所在的实体集或联创建
38、一个新的模式,其属性为多值属性所在的实体集或联系集的主码属性和该多值属性对应的属性组成,主码为系集的主码属性和该多值属性对应的属性组成,主码为全全部属性部属性。l设设M为多值属性,为多值属性,M对应的属性集为对应的属性集为A;E为为M所在的实体所在的实体集或联系集,且集或联系集,且E的主码为属性集的主码为属性集b1, b2, , bn,则由,则由M转转化的关系模式定义如下:化的关系模式定义如下:关系模式名:关系模式名:M;属性集:属性集:A b1, b2, , bn;主码:主码:A b1, b2, , bn;外码:参照关系外码:参照关系E的主码属性的主码属性b1, b2, , bn。n 例如,
39、例如,Student的的电话号码电话号码phoneNumber为为多值属性多值属性,关系模式为:,关系模式为:lphoneNumber (studentNo, teleNumber) 可以将可以将多值属性多值属性建模为建模为弱实体集弱实体集!E-R模型转化方法模型转化方法n 类层次转化两种方法类层次转化两种方法:l父类实体集和子类实体集分别转化为单独的模式父类实体集和子类实体集分别转化为单独的模式。其。其中,父类实体集对应的关系模式属性为父类实体集的中,父类实体集对应的关系模式属性为父类实体集的属性(即公共属性),而各子类实体集对应的模式由属性(即公共属性),而各子类实体集对应的模式由该子类的
40、特殊属性和父类实体集的主码属性组成。该子类的特殊属性和父类实体集的主码属性组成。它它们的主码与父类实体集的主码相同们的主码与父类实体集的主码相同。l只将子类实体集转化为关系模式只将子类实体集转化为关系模式,其属性由父类的全,其属性由父类的全部属性和子类的特殊属性组成。部属性和子类的特殊属性组成。E-R模型转化方法模型转化方法n 例如,按第例如,按第1种方法,父类种方法,父类Student和子类和子类Undergraduate、Graduate可转化为可转化为3个关系模式:个关系模式:lStudent (studentNo, studentName, sex, birthday, provinc
41、e, city, street)lUndergraduate (studentNo, interest)lGraduate (studentNo, direction)n 按第按第2种方法,则只转化为种方法,则只转化为2个关系模式:个关系模式:lUndergraduate (studentNo, studentName, sex, birthday, province, city, street, interest )lGraduate (studentNo, studentName, sex, birthday, province, city, street, direction) 各自的优
42、缺点分别是什么?各自的优缺点分别是什么?E-R模型转化方法模型转化方法n 聚合的转化方法聚合的转化方法:l聚合聚合是一种抽象。是一种抽象。l内层联系集内层联系集(即即联系实体集联系实体集)按其按其映射基数映射基数决定是否需要单独决定是否需要单独转化为一个独立的关系模式;转化为一个独立的关系模式;l外层联系集外层联系集也是按其也是按其映射基数映射基数决定是否需要单独转化为一决定是否需要单独转化为一个独立的关系模式;个独立的关系模式;l外层联系集外层联系集的的主码主码根据根据映射基数映射基数不同分别由不同分别由内层联系集内层联系集的的主码主码、外层实体集外层实体集的的主码主码按不同方式产生。按不同
43、方式产生。 l如由如由多对多多对多的的联系实体集联系实体集选课选课(Enroll)和和一对多一对多的的聚合聚合联系联系集集录入成绩录入成绩(Record)共同转化而成的关系模式为:共同转化而成的关系模式为: Enroll (studentNo, courseNo, cClassNo, score, TeacherNo, recordDate) 聚合的转化聚合的转化方法方法ABr1Cr2r1.attrr2.attrA (A.key, A.other)B (B.key, B.other)r1 (A.key, B.key, r1.attr)C (C.key, C.other)r2 (A.key, B
44、.key, C.key, r2.attr)ABr1Cr2r1.attrr2.attrA (A.key, A.other)B (B.key, B.other, A.key, r1.attr)C (C.key, C.other)r2 (B.key, C.key, r2.attr)聚合的转化聚合的转化方法方法ABr1Cr2r1.attrr2.attrA (A.key, A.other)B (B.key, B.other)r1 (A.key, B.key, r1.attr)C (C.key, C.other, A.key, B.key, r2.attr)ABr1Cr2r1.attrr2.attrA (
45、A.key, A.other)B (B.key, B.other)r1 (A.key, B.key, r1.attr, C.key, r2.attr)C (C.key, C.other)聚合的转化聚合的转化方法方法ABr1Cr2r1.attrr2.attrA (A.key, A.other)B (B.key, B.other, A.key, r1.attr)C (C.key, C.other, B.key, r2.attr)ABr1Cr2r1.attrr2.attrA (A.key, A.other)B (B.key, B.other, A.key, r1.attr, C.key, r2.at
46、tr)C (C.key, C.other)大学选课系统大学选课系统E-R模型转化实例模型转化实例 n 由实体集转化而来的关系模式由实体集转化而来的关系模式 n 由联系集转化而来的关系模式由联系集转化而来的关系模式 n 多值属性转化而来的关系模式多值属性转化而来的关系模式 n 由类层次转化而来的关系模式由类层次转化而来的关系模式 n 由聚合转化而来的关系模式由聚合转化而来的关系模式 (无)(无)大学选课系统大学选课系统E-R模型转化实例模型转化实例n 由实体集转化而来的关系模式由实体集转化而来的关系模式l 学院学院:Institute (instituteNo, instituteName, instituteAddress)l 班级班级:Class (classNo, className, grade, classNumber, instituteNo)l 学生学生:Student (stu
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 大学周年校庆活动策划方案
- 中级注册安全工程师《化工安全》试题题库测试卷(含答案)
- 钢结构火焰喷涂防腐专项施工方案
- 暑假纠错特训|高中数学函数单调性奇偶性易混知识点深度辨析复习课
- 外研版高二英语选必二读后续写预习 新学期预科精讲课件
- 2026年初中道德与法治练习
- 《工艺品修复技术》课件-4.2古建筑木构件的修复技术与保养工艺
- 2026年霍尔传感器制造工艺创新分析报告
- 民办非企业单位增加注册资金申请书
- 2026年放电线圈行业发展趋势报告
- 时寒冰 利益分析法全文
- 技术项目评审标准及流程模板
- 文化产业版权保护与运营规范
- 滴定培训课件
- 2026贵州能源集团有限公司第一批综合管理岗招聘41人(公共基础知识)测试题附答案解析
- DB61∕T 1399-2020 公共机构能耗定额
- 建筑装饰基本知识培训课件
- 成都设计咨询集团有限公司2025年社会公开招聘(19人)笔试参考题库附带答案详解(10套)
- IVUS相关知识考核试题及答案
- 班组培训与人才培养方案
- DB14-T 3223-2024 产业规划类专利导航项目质量要求
评论
0/150
提交评论