资源预览内容
第1页 / 共24页
第2页 / 共24页
第3页 / 共24页
第4页 / 共24页
第5页 / 共24页
第6页 / 共24页
第7页 / 共24页
第8页 / 共24页
第9页 / 共24页
第10页 / 共24页
亲,该文档总共24页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第6章 ER模型向关系模型的转换刘红岩 清华大学 管理科学与工程系 liuhysem.tsinghua.edu.cn1Hongyan Liu Tsinghua University主要内容n基本ER数据模型的转换q实体q联系q属性n增强ER数据模型的转化q特殊化/概括q聚集2Hongyan Liu Tsinghua University家属 姓名 年龄 关系ER图 案例工作于包含组成11*1*主管1 010*拥有111*部门 部门号PK 部门名 电话12职工 职工号PK 姓名 性别 生日 11拥有工程 工程号PK 开始日期 完成日期111*零件 零件号PK 零件名 重量 颜色供应0*供应商 编号PK 供应商名称 城市0*0*1*3Hongyan Liu Tsinghua UniversityER图向关系模型的转换一个实体转换为一个关系模式,实体的属 性就是关系的属性,对于非原子属性,进 行横向(如电话)或纵向(如地址)展开 。对于弱实体,其主键由其所依赖的实体 的键和本身的某些属性共同组成。 部门(部门号,部门名,联系电话)一个部门只有一 个联系电话 职工(部门号,职工号,职工姓名,性别,年龄) 家属(职工号,家属姓名,年龄,关系)4Hongyan Liu Tsinghua UniversityER图向关系模型的转换问题:实体的主键一定是关系的主键吗?如 :部门的联系电话若有多个时,主键?部门 号部门 名联系电 话 B1部门1 62789999B1部门1 62789998B2部门2 627823335Hongyan Liu Tsinghua UniversityER图向关系模型的转换一个联系转换为一个关系模式,与该联系相 连的各实体的键及联系本身的属性作为关系 模式的属性,一般情况下,其主键有三种情 况: a. 1:1: 每个实体的主键都可作为关 系的主键。 b. 1:*: 多端实体的主键。 c. *:*:两个实体的主键组合起来。 如部门和职工之间的包含联系:部门 号职工 号 B194238B187993B259083部门 号部门 名联系电话B1部门162789999B1部门162789998B2部门262782333职工 号姓名性别年龄94238张三 87993王二 59083李四6Hongyan Liu Tsinghua UniversityER图向关系模型的转换为了减少关系模式的个数:q对于1:1的两个实体 如教师与房间(1人1房间)n双方都是全参与, 什么语义 ?q把其中任一个实体的主键及 联系本身属性加入到另一个之中 teacher(tno,tname,rno) room(rno, rdirection) teacher(tno,tname,) room(rno, rdirection, tno)7Hongyan Liu Tsinghua UniversityER图向关系模型的转换工作 证号姓名性别年龄94238张三 87993王二59083李四房间 号朝向201南203北204南工作证 号姓名 性 别年龄 房间 号 94238张 三20187993王二 20359083李四 204房间 号朝向 工作证 号 201南94238203北87993204南590838Hongyan Liu Tsinghua UniversityER图向关系模型的转换n一方是全参与,另一方是部 分参与:为了避免取NULL值,将部 分参与方的实体主键加入另一方中 例1:设教师是全参与: 语 义? t(tno,tname, rno) r(rno, rdirection) 否则,若为: t(tno,tname,) r(rno, rdirection, tno)9Hongyan Liu Tsinghua UniversityER图向关系模型的转换n例2:职工与工程之间的主管关系:ER 图 案例工作证 号姓名性别年龄94238张三87993王二59083李四房间 号朝向201南203南204北205南工作证 号姓名性 别年 龄房间 号 94238张 三20187993王二203 59083李四204房间 号朝向工作证 号 201南94238203南87993204北59083205南10Hongyan Liu Tsinghua UniversityER图向关系模型的转换n双方都是部分参与: 联系单 独作为一个关系模式,其属性由双方 各自主键和联系本身的属性共同构成 t(tno,tname,) r(rno, rdirection) teacherRoom(rno, tno, begindate)否则:t(tno,tname,rno,begindate) r(rno, rdirection) 或 t(tno,tname,) r(rno, rdirection, tno, begindate) 会有什么问题?11Hongyan Liu Tsinghua UniversityER图向关系模型的转换工作证 号姓名性别年龄94238张三87993王二59083李四房间 号朝向201南 203北 204南工作证 号姓名性 别年龄房间 号 94238张 三20187993王二203 59083李四 房间 号朝向工作证 号 201南94238203北87993204南工作证 号姓名性别年龄94238张三87993王二59083李四房间 号朝向201南203北204南房间 号工作证 号日期2019423897-8-12038799396-3-1012Hongyan Liu Tsinghua UniversityER图向关系模型的转换q对于1对多的联系,只需将1端实 体的主键及联系本身的属性加入到多端 实体中即可。q系,班级之间的联系体现在多端 实体中: 系(系名,系主任,电话) 班级(系名,班名,人数)13Hongyan Liu Tsinghua UniversityER图向关系模型的转换q若多端实体是部分参与,可将联 系单独作为一个关系模式。n若有的班级不属于任何一 个系,则为了避免系名取空值,可 将联系单独作为一个关系模式q系(系名,系主任,电 话),q班级(班名,人数),q系籍(系名,班名) 部门与职工之间的联系:ER 图 案例14Hongyan Liu Tsinghua UniversityER图向关系模型的转换q多对多联系:联系单独作为一个关系 模式,除联系本身属性外,将相连实体的主 键加入。n 例子:职工:工程;零件:零 件零件(零件号,零件名,重量,颜色) 零件构成(零件号,子零件号,数 目)零件号 零件名 重量颜色P1零件1 P2零件2 P3零件3 P4零件4零件号 子零件号 数目P3p12 P3p24P4p1515Hongyan Liu Tsinghua UniversityER图向关系模型的转换q多元联系n一般需要将联系单独作为一个 关系模式,将各个相关的关系模式的主键 组合起来加上联系的属性构成它的属性n例子:工程、供应商和零件之 间的联系 供应(工程号, 供应商编号, 零件号, 数量)工程号 供应商编 号零件号 数量J1S1P1300 J1S2P2200 J2S1P2400 J2S3P310016Hongyan Liu Tsinghua University家属 姓名 年龄 关系ER图 案例工作于包含组成11 *1*主管1 0 10 *拥有1 11 *部门 部门号PK 部门名 电话12职工 职工号PK 姓名 性别 生日 1 1拥有工程 工程号PK 开始日期 完成日期1 11 *零件 零件号PK 零件名 重量 颜色供应0 *供应商 编号PK 供应商名称 城市0 *0 *1 *17Hongyan Liu Tsinghua UniversityER图向关系模型的转换部门(部门号,部门名,联系电话) 职工(部门号,职工号,职工姓名,年龄) 家属(职工号,家属姓名,性别,关系) 工程(工程号,名称,起始日期,终止日期,主管职工号 ) 工作于(职工号,工程号,期限) 供应商(供应商编号, 供应商名称, 城市) 零件(零件号,零件名,重量,颜色) 供应(工程号, 供应商编号, 零件号, 数量) 零件构成(零件号,子零件号,数目) 18Hongyan Liu Tsinghua UniversityEER数据模型向关系模 型的转换19Hongyan Liu Tsinghua University特殊化/概括:方案1S(sno, sname, sex, birthdate, province) U(sno, 高考分数,省状元) G(sno, type, 录取方式) D(sno,married,parttime) snosnamesexbirthdateprovince990011张珊F80-3-2河北990012李四M81-5-6河南990211王二M75-8-29山东990300赵娜F73-9-3山西sno高考分数省状元 990011660N990012680YSnotype录取方式 990211直硕免试 Snomarriedparttime 990300NNStudentGraduateUndergraduateMandatory, OrDoctor20Hongyan Liu Tsinghua University方案2:不相交、全特殊化U(sno, sname, sex, birthdate, province,高考分数,省状元) G(sno, sname, sex, birthdate, province ,type, 录取方式) D(sno, sname, sex, birthdate, province, married, parttime)snosnamesexbirthdateprovince高考 分数省 状元 990011张张珊F80-3-2河北660N990012李四M81-5-6河南680Ysnosnamesexbirthdateprovincetype录录 取 方式 990211王二M75-8-29山东东直 硕硕免 试试snosnamesexbirthdateprovincemarriedparttime 990300赵赵娜F73-9-3山西NNStudentGraduateUndergraduateMandatory, OrDoctorn若相交会有何问题? 部分特殊化呢?21Hongyan Liu Tsinghua University方案3:不相交特殊化, orS(sno, sname, sex, birthdate, province, 高考分数,省状元,type, 录取方式, married, parttime, T) T=i:表示实体属于实体集i. T=0:不属于任何一个子实体集snosnamesexbirthdateprovince高考 分数省状 元type录录 取方 式marriedparttimeT990011张张珊F80-3-2河北660N1990012李四M81-5-6河南680Y1990211王二M75-8-29山东东直 硕硕免 试试2990300赵赵娜F73-9-3山西NN3StudentGraduateUndergraduateMandatory, OrDoctor22Hongyan Liu Tsinghua University方案4:重叠特殊化, a
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号