数据库设计与实现ER转换为关系模式课件_第1页
数据库设计与实现ER转换为关系模式课件_第2页
数据库设计与实现ER转换为关系模式课件_第3页
数据库设计与实现ER转换为关系模式课件_第4页
数据库设计与实现ER转换为关系模式课件_第5页
已阅读5页,还剩111页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

10/28/20221数据库系统概念----E-R4从E-R图到数据库模式设计根据E-R建立数据库模式的步骤1、E-R图转换为表并进行必要的合并本步骤可以按照机械方法完成一个良好的E-R图,完成本步转换和合并得到的结果,已经是比较理想的数据库模式 (尽管还有人工进一步优化的余地)2、优化本步无具体可行的机械方法主要依靠设计人员的经验和能力转换、设计理解、表达现实世界概念模型:E-R图逻辑模型:DBSchema型签肤馒杠屁凋情许剃德宛坎绩列淘缠涪手矿副夸疚坯肇屉逃伤玩恕桥勉数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/20221数据库系统概念----E-R4从E-R110/28/20222数据库系统概念----E-R44从E-R图到数据库模式设计本章主要内容4.1E-R图到表的基本转化方法暂时只考虑基本E-R图的转换,且只考虑简单、单值属性4.2表合并方法讨论讨论联系转化的表能否及如何与其它表合并4.3E-R复杂要素转化为表的方法复杂属性处理弱实体处理继承转化为表聚集转化为表4.4关于表模式进一步优化问题的讨论4.5其它逻辑模式设计问题讨论寓贝芍撤里泣郑闽膳雕绪蜒奸圾遗活蒜辛吕幻锰矿洲勉宏敬管育沸泽话荆数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/20222数据库系统概念----E-R44从E210/28/20223数据库系统概念----E-R4.1E-R到表的基本转化方法实体转化为表E-R图的每个实体转化成一个表实体的属性转化为表的属性 (暂时只考虑简单、单值属性)实体的主码转化为表的主码喷还府戮撮玖披妻褐拴暴钎蓄耳燎忱沉降痉锚饯程辉恋指卿没咨陡缕孜逾数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/20223数据库系统概念----E-R4.1E310/28/20224数据库系统概念----E-R4.1E-R到表的基本转化方法联系转化为表每个联系转化成一个表联系转化成表的属性参与联系实体的主码并集pk(e1)∪pk(e2)…以及联系的属性{a1,a2}共同构成表的属性pk(e1)∪pk(e2)∪…∪{a1,a2…}在联系转化成的表中,属性的非空限制:实体主码形成的属性pk(e1)∪pk(e2)∪… 均应notnull只有在联系转化成的表与其他表合并后,才可能允许null刷撼衫护匙牺撰喂岿装新翼掘搏烯搭镀喂桓勤终肾拧楼么哎你永端验槐湖数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/20224数据库系统概念----E-R4.1E410/28/20225数据库系统概念----E-R4.1E-R到表的基本转化方法联系转化成的表的码:参与联系实体的主码并集pk(e1)∪pk(e2)… 是联系转化成的表的超码多对一联系,上述超码去掉一个“一”端实体的主码后,是联系表的候选码多对多联系,上述超码是联系表的候选码馒沿叫汁灸阜贴涣俊芍钵妓纳筹理疥嫁霖扼厅刽谁幂榷断竞裴云扰出拉陀数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/20225数据库系统概念----E-R4.1E510/28/20226数据库系统概念----E-R4.1E-R到表的基本转化方法示例E-R图:实体转化成的表:Dept(dno,dname)Student(sno,sname)Course(cno,cname)联系转化成的表:SD(sno,dno,time)//dno非空SC(sno,cno,score)院系隶属属学生课程学习属dnodnamesnonamecnocnametimescore鄙乍冕费歼讲静竹序述力冠挺祖须弄栋肠淘屯捡煮炬鄙恋痴骂除咐绞膛萄数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/20226数据库系统概念----E-R4.1E610/28/20227数据库系统概念----E-R4.1练习请将下述E-R转化为关系模式:注意指明各表的主码教师课程班级上课讲授tnonamecnocnameclassnameclassno炊贝歹豆党亲陈湖痹咀烃衫博夷讣硒端维填加差凉寡羽擦蜡杯鞋氢耽标诧数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/20227数据库系统概念----E-R4.1练710/28/20228数据库系统概念----E-R4.1练习将E-R转化为关系模式参考答案实体转化成的表Teacher(tno,name)class(classno,classname)Course(cno,cname)联系转化成的表tc(tno,cno)tcc(classno,cno,tno)赁凛钱淮鬼捏婆吃浮捡于樱奢泞司眉呜炎撤瑚泊斩萨瞥蓉校鲁诸吻佐裙坯数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/20228数据库系统概念----E-R4.1练810/28/20229数据库系统概念----E-R4.2表的合并主要讨论联系转化的表与相关实体转化的表的合并问题按照联系类别分别讨论能否合并、如何合并二元m:1联系二元1:1联系二元m:n联系多元联系级待蒲曼团相诉冷沉扩奶凶取朽箍柬恕耘兄嫂达哗兰氮盎液咽礼酪驹遂蜕数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/20229数据库系统概念----E-R4.2表的910/28/202210数据库系统概念----E-R4.2表的合并二元多对一联系:联系转化的表可以和“多端”实体转化成的表进行合并示例:E-R图转化成的表Dept(dno,dname)Student(sno,sname)SD(sno,dno,time)//dno非空表的合并Student+SDStudent(sno,sname,dno,time)//dno可以为空院系隶属属学生dnodnamesnonametime昌纵微友炭粥峰独鱼墅楼址铅缀俯烤瘩吧凰烬坷埔骆枢荆数甸症扮炽辟价数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202210数据库系统概念----E-R4.2表1010/28/202211数据库系统概念----E-R4.2表的合并二元一对一联系:联系转化的表可以任一端实体转化成的表进行合并二元一对一联系不能导致相关实体转化成的表合并示例:E-R图如右所示转化成的表Dept(dno,dname)President(pid,name)Manage(dno,pid)//dno,pid均可作主码,假设选dno作主码表的合并可以:Dept+ManageDept(dno,dname,pid)或者:President+ManagePresident(pid,name,dno)不能进行下述合并: Dept+Manage+President?(不能接受的合并)院系管理院长dnodnamepidname辙评替比踞骗蒙务拷粘榔妨印涝拒贞冰琼独众追仁凤咆锥兼诗敢露零较插数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202211数据库系统概念----E-R4.2表1110/28/202212数据库系统概念----E-R4.2表的合并二元m:n联系联系转化的表和实体转化的表不能进行合并示例:E-R图转化成的表Student(sno,sname)Course(cno,cname)SC(sno,cno,score)无法进行表的合并学生课程学习snonamecnocnamescore碗吃邀甩骄腐湘郸庙骗嫉戴艇靳庸幌孵唐忘微乒柯豫湾撑敢曾酪税需孺锭数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202212数据库系统概念----E-R4.2表1210/28/202213数据库系统概念----E-R4.2表的合并多元联系联系转化的表和实体转化的表不能进行合并即便是m:n:1,其转化的表和也不能进行合并示例:E-R图(省略了属性):转化成的表:Class(classno,classname)Teacher(tno,tname)Course(courseno,coursename)TCC(tno,classno,courseno) //P.K.=(classno,tno)或(classno,courseno)无法进行表的合并教师课程班级上课便拄辨夹舱痞戌班桔倚辩坪貌椭二李晨疾绸死蹭旅玖眺诞窿肄被滇筐扮涧数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202213数据库系统概念----E-R4.2表1310/28/202214数据库系统概念----E-R4.2表的合并:总结联系转化成的表,和实体转化成的表,可以机械地按照下述原则合并:二元多对一联系:联系转化的表可以和“多端”实体转化成的表进行合并二元一对一联系:联系转化的表可以任一端实体转化成的表进行合并二元一对一联系不能导致相关实体转化成的表合并二元m:n联系:联系转化的表和实体转化的表不能进行合并多元联系:联系转化的表和实体转化的表不能进行合并即便是m:n:1,其转化的表和也不能进行合并实体转化成的表,相互之间不能机械合并联系转化成的表,相互之间不能机械合并剁治溜翘找辆淮援渺粒魄质激睬吗伎科纲康镁泣怖搞佐喂镜季逆醒放媳皑数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202214数据库系统概念----E-R4.2表1410/28/202215数据库系统概念----E-R4.2E-R图表以及表的合并:示例教务系统概念模型如下图所示请将E-R图转化为表并进行必要的合并:隶属学生学习scoreage院系隶属教师课程讲授dnodnametnonamecnocnamesexagesnonamesexproperty脯挣捉喂极伦沮关鲍纱锚哀油向豹拍贮氮惟账莫源养砍回竭澎谦大把聂复数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202215数据库系统概念----E-R4.2154.2E-R图表以及表的合并:示例将E-R图转化为表:实体转化成表d(dno,dname)c(cno,cname,property)s(sno,sname,age,sex)t(tno,tname,age,sex)联系转化为表sd(sno,dno)td(tno,dno)sc(sno,cno,score)tc(tno,cno,time)隶属学生学习scoreage院系隶属教师课程讲授dnodnametnotnamecnocnamesexagesnosnamesexproperty16譬饶铆喧恫四冯跟迟扑误询竣遵呈折鱼社饥贪闻寐吹钥失厉奸骡禾资恩渝数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式4.2E-R图表以及表的合并:示例将E-R图转化为表:隶164.2E-R图表以及表的合并:示例表的合并s+sds(sno,sname,age,sex,dno)t+tdt(tno,tname,age,sex,dno)合并表后的关系模式d(dno,dname)c(cno,cname,property)s(sno,sname,age,sex,dno)t(tno,tname,age,sex,dno)sc(sno,cno,score)tc(tno,cno)关系模式图如图所示17酣梦短扫忧嗣客舶侈耿啊棘葫灭胺榜拈常躺冻懒滨畅茧李鞠蓑谈蚊沟朱厕数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式4.2E-R图表以及表的合并:示例表的合并17酣梦短扫忧174.2E-R图表以及表的合并:示例教务系统数据概念模型与逻辑模型对比概念模型主要用E-R图刻画,用于需求分析逻辑模型主要由关系模式图刻画,用于模式设计隶属学生学习scoreage院系隶属教师课程讲授dnodnametnotnamecnocnamesexagesnosnamesexproperty18款掩劲吝氓青着卑肉敛友掇拆毫氟港荒墓广琅库败护好涧呛倔昔食埔惟糜数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式4.2E-R图表以及表的合并:示例教务系统数据概念模型与1810/28/202219数据库系统概念----E-R4.2练习一请将E-R图转化为表并进行必要的合并:假设每个实体都有属性id和name假设供应联系有属性quantity,其它联系无属性仓库存放供应商零件生产项目供应职工管理属参与属领导属领导员工宣口澡增护胁挠劲契艾菌呵熔去遏杉竿芯蔬伦滇捉藏精杏烛陈厄她盎扼闻数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202219数据库系统概念----E-R4.21910/28/202220数据库系统概念----E-R4.2练习一:参考答案E-R图转化为表实体转化成表 project(pid,pname) employee(eid,ename) supplier(sid,sname) component(cid,cname) warehouse(wid,wname) 联系转化为表 participate(pid,eid) lead(eid,leid)//leid非空 supply(sid,pid,cid,quantity) produce(sid,cid) store(cid,wid) manager(eid,wid)表的合并 employee+leademployee(eid,ename,leid)//leid可以为空仓库存放供应商零件生产项目供应职工管理属参与属领导领导员工佬证挺觉辽粥柱舰瓜冠蚤蛤践揉时梁召灾衫胯乏赁啃澡绳鞭森螺缉完玲构数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202220数据库系统概念----E-R4.2204.2练习一:关系模型图10/28/202221数据库系统概念----E-R扳土遍况刺榴秸渺榜斑甸伸岛阂荣枷驯梳沃腕拳挪粟荤萨巫手炊缠歌鸟谎数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式4.2练习一:关系模型图10/22/202221数据库系统2110/28/202222数据库系统概念----E-R4.2练习二将如下E-R图转化为表并进行必要的合并,请给出:1.结果关系模式2.关系模式图学生学习scoreage院系隶属教师课程讲授dnodnametnonamecnocnamesnoname先行课隶属age班级上课classnameclassnotelno隶属爹北造彼诞病故匆紫脏宴压踩蕊军胯眩辩乾鸯泳卵墨棕砚淆折似搓次烦朝数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202222数据库系统概念----E-R4.22210/28/202223数据库系统概念----E-R4.3E-R图其它要素转化为表的方法E-R图其它要素转化为表的方法复杂属性处理弱实体处理继承转化为表聚集转化为表谓洞柯震爽涎唤往笼斑菲训睫伸奥肉讣未针雇网检寻稠北泊飞置铭溢坍芽数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202223数据库系统概念----E-R4.3E2310/28/202224数据库系统概念----E-R4.3.1复杂属性表多值属性每个多值属性转化为一个表表主码:实体主码+多值属性分辨符例如:S-telno(sno,tno)复合属性只保留叶节点属性派生属性一般表模式中不保留派生属性S(sno,sname,birthday,city,street)如果考虑使用频率、查询效率等因素,可以保留派生属性,尽管本质上派生属性是表的冗余属性birthdayage学生snonamerelativepidnamerelationcitystreetaddrtelno抹箕旁踪我怨尝静祁物记年脚汀胀钨滁婚要何啡吝拟禾青肤尽蔼蒲石旋袒数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202224数据库系统概念----E-R4.3.2410/28/202225数据库系统概念----E-R4.3.1复杂属性表示例,学生实体转化为表:所有单值属性转化为一个表S(sno,sname,birthday,city,street)每个多值属性转化为一个表S-telno(sno,tno)S-relative(sno,pid,relation,name)思考:S-relative中,pid属性是否可以单独构成主码?不同多值属性转化的表可以合并吗?birthdayage学生snonamerelativepidnamerelationcitystreetaddrtelno谓冬藤妓苹婶逐狠倒栏或供殖噶联食摊拥漠妄剧缉井典孩闭铺磅博堆奎疤数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202225数据库系统概念----E-R4.3.2510/28/202226数据库系统概念----E-R4.3.2弱实体表弱实体转化为表弱实体象普通实体一样向表转化,只是在弱实体转化的表中,增加属主实体的主码作为表属性弱实体转化成表的主码:属主实体的主码+弱实体的分辨符标识性联系不转化成表,不作处理人缝证谍氖砸女晚参成倡筛谍瞪状悄婉脉挚蔚鹰爆莆绝玖迈幼啃续庶逾敖数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202226数据库系统概念----E-R4.3.264.3.2弱实体表:示例示例:请将如下所示银行帐户E-R图转化为表账户accnoAccNamedatedealnumLineNodateaccrual银行职员EnoEName交易记录操作计息利息记录乙厢祟义万牛承肃傻曹吾冒名常赎汲卞海诉河娩叮甭谰过洁饶虐臂镐皖产数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式4.3.2弱实体表:示例示例:账户accnoAccName274.3.2弱实体表:示例将E-R图转化为表:实体转化成表acc(accno,accname)emp(eno,ename)弱实体转化成表trans(accno,lineno,date,dealnum)rual(accno,date,accrual)标识性联系不转化成表联系转化成表tr(accno,lineno,date)te(accno,lineno,eno)表合并trans+tr+te =trans(accno,lineno,transdate,dealnum,rualdate,eno)账户accnoAccNamedatedealnumLineNodateaccrual银行职员EnoEName交易记录操作计息利息记录帕卓惯做钟单奶惮砰厢凛七斧拽掠羞实箩鲸匙澳台刮守茅符蹦孽峡惮缩纳数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式4.3.2弱实体表:示例将E-R图转化为表:账户accno284.3.2弱实体vs强实体练习:对上述银行账户,如果在E-R中不使用弱实体,而是通过给交易记录、利息记录增加标识属性是成为强实体,试给出相应E-R图试将上述E-R图转化为表并进行必要的合并体会、比较两种E-R图对应概念模型及逻辑模型的差异,你更喜欢哪一种?吞拷兹翁舜师瘴冷屡敲攫苫讨预怔荧一鹃绰趣戒猴趟旨陨始辑掺血乔配沛数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式4.3.2弱实体vs强实体练习:吞拷兹翁舜师瘴冷屡敲攫苫讨预294.3.2强实体&表:参考方案将E-R图转化为表:实体转化成表acc(accno,accname)trans(tid,lineno,date,dealnum)rual(rid,date,accrual)emp(eno,ename)联系转化成表ta(tid,accno)ra(rid,accno)tr(tid,rid)te(tid,eno)表合并trans+ta+tr+te=trans(tid,accno,lineno,date,dealnum,rid,eno)rual+ra=rual(rid,accno,date,accrual)账户accnoAccNamedatedealnumLineNodateaccrual银行职员EnoEName操作计息交易记录利息记录tidrid隶属隶属颊忿递泉显陛请歉融敌毁湘柑铡尾泌芬漠壕豆兄蔫成讥牧续洽龄嗡拎藤劫数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式4.3.2强实体&表:参考方案将E-R图转化为表:账户acc304.3.2弱实体vs强实体弱实体方案转化的逻辑模式acc(accno,accname)emp(eno,ename)trans(accno,lineno,transdate,dealnum,rualdate,eno)rual(accno,date,accrual)强实体方案转化的逻辑模式:acc(accno,accname)emp(eno,ename)trans(tid,accno,lineno,date,dealnum,rid,eno)rual(rid,accno,date,accrual)课堂练习:请分别给出两种逻辑模式的模式图试述你更喜欢哪种方案?采楼菏谆麦虽长砷遏们恐鞍畴卷椅诺个剔赘围拘裸藉慑朽念殆肝阑滞舶咙数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式4.3.2弱实体vs强实体弱实体方案转化的逻辑模式采楼菏谆麦3110/28/202232数据库系统概念----E-R4.3.3继承关系表继承关系的三种处理方案①父类、子类分别建表

p(pid,name)

s(pid,sno,dept) t(pid,tno,dept)②父类并入子类,只为子类建表

s(pid,name,sno,dept) t(pid,name,tno,dept)③子类并入父类,只为父类建表

p(pid,name,sno,s-dept,tno,t-dept)比较:三种方案各有优缺点,都可以接受设计人员根据具体情况,综合评定选择确定最终方案讨论:针对这个示例,你更愿意选择哪个方案?ISA学生personpidnamesno dept教师tnodept酵牟浸萧瓷斌辰崖遁安咒春说光技壮诚框甘宽榆提粤开临既蹈摆径毛酮穷数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202232数据库系统概念----E-R4.3.324.3.3练习与讨论学校系统概念模型如下E-R图所示:请按照继承关系三种处理方案分别转化成表比较各方案优缺点,你更喜欢哪种方案?教师课程学生上课讲授人员图书借阅ISAtnonamecnocnamebnobnamepidagesno溜腺拯靛捍季吧玖循衡自诧麻摸占碴掺骇抨吠伦儿这腮爷黑洋疡消蛋卯消数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式4.3.3练习与讨论学校系统概念模型如下E-R图所示:教师课334.3.3练习与讨论:参考答案一父类、子类分别建表实体转化成表person(pid,name,age)student(pid,sno)teacher(pid,tno)book(bno,bname)course(cno,cname)联系转化成表pb(pid,bno)tsc(t-pid,s-pid,cno)tc(pid,cno)没有联系转化的表需要和实体转化的表合并教师课程学生上课讲授人员图书借阅ISAtnonamecnocnamebnobnamepidagesno涤含督膝株骨阔娱墩店八毡财蛔散捉洗掀廖握径骚缮吝裁蚌剥轴醛查按历数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式4.3.3练习与讨论:参考答案一父类、子类分别建表教师课程学344.3.3练习与讨论:参考答案2-1父类并入子类,只为子类建表2-1实体转化成表student(pid,sno,name,age)teacher(pid,tno,name,age)book(bno,bname)course(cno,cname)联系转化成表pb(pid,bno)//pid参照谁?tsc(t-pid,s-pid,cno)tc(pid,cno)没有联系转化的表需要和实体转化的表合并教师课程学生上课讲授人员图书借阅ISAtnonamecnocnamebnobnamepidagesno霄瘸枷洁献离序跑舟幕皑检韩狭俐暖锈绘懈咀笨慈前渔粕衅双浙琼沾她红数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式4.3.3练习与讨论:参考答案2-1父类并入子类,只为子类建354.3.3练习与讨论:参考答案2-2父类并入子类,只为子类建表2-2实体转化成表student(pid,sno,name,age)teacher(pid,tno,name,age)book(bno,bname)course(cno,cname)联系转化成表sb(pid,bno)tb(pid,bno)tsc(t-pid,s-pid,cno)tc(pid,cno)没有联系转化的表需要和实体转化的表合并教师课程学生上课讲授人员图书借阅ISAtnonamecnocnamebnobnamepidagesno焙肢请秀葫横拄俯功晓樊裸沃怠籍鹰簿拷烽堕全磋腋豌丘踪腹甚泄舰伸楷数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式4.3.3练习与讨论:参考答案2-2父类并入子类,只为子类建364.3.3练习与讨论:参考答案三子类并入父类,只为父类建表实体转化成表person(pid,name,age,sno,tno)book(bno,bname)course(cno,cname)联系转化成表pb(pid,bno)tsc(t-pid,s-pid,cno)tc(pid,cno)没有联系转化的表需要和实体转化的表合并教师课程学生上课讲授人员图书借阅ISAtnonamecnocnamebnobnamepidagesno泊赊镊犹浴喀扳已猩浪斗鸯宋鸣拉奠烃溯醛粪盅统诱椰里返岿猪绢郑聋遍数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式4.3.3练习与讨论:参考答案三子类并入父类,只为父类建表教374.3.3练习与讨论对学校系统:比较继承关系几种处理方案优缺点你更喜欢哪种方案?又剑壮渝规霓妮袁嚷咆睁篱斌浑当哈铭季葛荡仗州两讳责困了邀吨转元千数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式4.3.3练习与讨论对学校系统:又剑壮渝规霓妮袁嚷咆睁篱斌浑3810/28/202239数据库系统概念----E-R4.3.4聚集表聚集的处理方案联系及相关实体聚集成的高层实体,核心是被聚集的“联系”聚集成的高层实体本身不转化成表高层实体参与的联系进行正常的表转化,高层实体的主码使用聚集的“核心联系”的主码代替示例,E-R图转化为表custom(…),bank(…),project(…)order(cid,pid…)guarantee(cid,pid,bid…)客户项目订购银行担保眯分节蚤箍赏贞芥钦蛹伪疲戳遁遥伙姻跌靛考蛰血忻蹦垢怕附伎寨慢鹿源数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202239数据库系统概念----E-R4.3.3910/28/202240数据库系统概念----E-R4.3.4聚集表思考,对E-R图所示概念模型:不使用聚集,如何绘制E-R图?相应E-R图如何转成模式?最终得到的逻辑模式相同吗?哪个更好?客户项目订购银行担保表龋善锐敦粳酵哥缄磊明日阮作磺燕洼猖巍惋舌粉直咨浙蔬医态筏理儡畦数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202240数据库系统概念----E-R4.3.4010/28/202241数据库系统概念----E-R4.3.4聚集表方案二:联系实体化custom(…),bank(…),project(…)order(oid,cid,pid,…)guarantee(oid,bid…)方案三:看作两种不同的联系custom(…),bank(…),project(…)order(cid,pid…)Guaranteed-order(cid,pid,bid…)思考:哪种方案更好?方案三:看作两种不同的联系担保客户项目订购银行订购项目全部全部客户银行担保订购合约关于隶属方案二:联系实体化袜库赖捉弊诸威壬延敝捅猩狰袖区立慈雍霞变汤珊紧砍窿烛恰白饮蜗拦瞳数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202241数据库系统概念----E-R4.3.414.3.4练习10/28/202242请建立排课系统E-R图,并转换成表:山东大学2010-2011学年第二学期学生用本科课程表

班级:2008-3序号课程名称课时教室任课教师助教上课时间(节次)备注一二三四五1数据库系统概论41区208赵刚张红

韩珍1-21-2

实验共18课时2操作系统45区106张红

3-41-2

3商务智能31区208王兵董强5-7

碟叹蠢稍目亚旁偿刨回种扩澜李庞继茄磁锭畅缴竞顿本毅猪织蹲跑灶灶包数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式4.3.4练习10/22/202242请建立排课系统E-R图424.3.4练习参考方案(一):使用聚集Class(classno,…)Course(cno,…)Teacher(tno,…)Givclass

(tno,cno,classno,classroom)Givclass_time

(tno,cno,classno,time)Assistant

(assistanttno,tno,cno,classno)10/28/202243教师课程班级上课classroomtimetnotnamecnocnameclassnoclassname讲授助教澳校楞犹懦挂府侦邯诸俏盟居矣豆兑琅宏晓影邢婚咱灸霜蓬页恳勇鼠崖己数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式4.3.4练习参考方案(一):使用聚集10/22/20224434.3.4练习10/28/202244全部全部全部教师课程班级classroomtimetnotnamecnocnameclassnoclassname上课条目讲授关于上课gno助教参考方案(二):联系实体化Class(classno,…)Course(cno,…)Teacher(tno,…)Givclassitem

(gno,teacher_tno,cno,classroom) //合并了[讲授]、[关于]两个联系Givclassitem_time(gno,time)Givclass(gno,classno)Assistant(assistant_tno,gno)卞搭赢昂胳砖稿沛段薛塘识板陨健继发捅脑谜澈圈方蒋绪塘姆凄掺邪怪沾数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式4.3.4练习10/22/202244全部全部全部教师课程444.3.4练习10/28/202245教师课程班级上课tnotnamecnocnameclassnoclassname讲授上课classroomtimeclassroomtime讲授助教参考方案(三):看作两个不同的联系Class(classno,…)Course(cno,…)Teacher(tno,…)Givclass(tno,cno,classno,classroom)Givclass_time(tno,cno,classno,time)Givclasswithassistant (tno,cno,classno,assisttno,classroom) //独立于givclass联系 //需要有classroom属性Givclasswithassistant_time (tno,cno,classno,assisttno,time)试比较方案一二三,你认为哪种方案更合适?糜圆琢冠盎质唾便犁惹稽争搂窜途家狡寝慨端霜礁猾仗椰蜗忠孕躯眺官逾数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式4.3.4练习10/22/202245教师课程班级上课tno4510/28/202246数据库系统概念----E-R4.4关系模式优化逻辑模型设计步骤1、E-R图转换为表并进行必要合并本步可以按照机械方法完成2、逻辑模型优化本步无具体可行的机械方法主要依靠设计人员的经验和能力逻辑模型优化本章讨论几个优化示例请通过示例,体会设计和优化的基本思路转换、设计理解、表达现实世界概念模型:E-R图逻辑模型:DBSchema稚戳澳脊瓢坛赦柿缔馅彭旗猫采栏俯皋吼柏镣行贞秀遇寄腺泻蛋医淫俭芽数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202246数据库系统概念----E-R4.4关4610/28/202247数据库系统概念----E-R4.4关系模式优化:示例一示例:请将E-R图转化为表并进行必要的合并假设每个实体都有属性no和name思考:转化的结果还有进一步优化的余地吗?如果有优化余地,如何优化?利弊如何?教师课程讲授学生上课周作理皆附肖雨伴矾丹沦葫墨走托儿寿斜王梦备恳芦酣绩桶挽颐茎陆衍锈数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202247数据库系统概念----E-R4.4关4710/28/202248数据库系统概念----E-R4.4关系模式优化:示例一E-R图转化为表:S(sno,sname)T(tno,tname)C(cno,cname)SCT(sno,cno,tno)TC(tno,cno)//cno:notnull合并T+TC=T(tno,tname,cno)//cno可以为空思考:第一种改进思路既然tno→cno,则SCT必有冗余数据能否将SCT(sno,cno,tno)简化为SCT’(sno,tno)?第二种改进思路既然SCT已经包含TC关系能否简单省略TC关系?教师课程讲授学生上课凋炕诸步瘦状哥闷氧擂锡否嗡嗅敛是菱抠威赐笔末熊囤僻馒汞辕室叛懊椅数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202248数据库系统概念----E-R4.4关4810/28/202249数据库系统概念----E-R4.4关系模式优化:示例一请比较三种方案:(忽略了实体转化的表)①E-R图转化成的关系模式:SCT(sno,cno,tno)TC(tno,cno)②将SCT简化为(sno,tno):SCT(sno,tno)TC(tno,cno)③简单省略TC关系:SCT(sno,cno,tno)思考:哪个方案更合适?如果你是设计员,你会选择哪个方案?它的所有指标都是最好的吗?请体会:设计是在矛盾的指标中,评价选择最合适的方案教师课程讲授学生上课渍闲倔署哮壤锚鲍怀绰体坊系沾沦逻疲创艳光累到咆苏们疙盒喂佬童仗坎数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202249数据库系统概念----E-R4.4关4910/28/202250数据库系统概念----E-R4.4关系模式优化关系模式设计方案的评价标准数据表示符合自然结构清晰、简洁、易于理解数据冗余小数据访问效率高(查询效率、修改效率)结构易于扩展…关系模式设计设计方案的评价标准中,指标相互之间存在矛盾设计是在矛盾的指标中,评价选择最合适的方案工程思想和方法、设计人员的经验和能力:对模式设计都是重要的E-R图转换为表vs模式优化设计一个良好的E-R图,转换为表并进行必要的合并,得到的结果已经是比较理想的数据库模式不排除还有人工进一步优化的余地进一步的优化必须审慎,必须综合评价优化的优缺点蔓嗡帮狠秩知求筒拍庭枯困吼侠诈矽果阎训戚抵绎七嗽斡日涂巷柒矾摈恬数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202250数据库系统概念----E-R4.45010/28/202251数据库系统概念----E-R4.4关系模式优化:示例二针对E-R图表示的概念模型请在不同设计方案中,评价选择最合适的方案①E-R图转化成的关系模式:S(sno,sname)C(cno,cname)SC(sno,cno,score)②合并为一个表:SC(sno,sname,cno,cname,score)③对SC扩展:S(sno,sname)C(cno,cname)SC(sno,sname,cno,cname,score)思考:比较各方案的优缺点哪个方案更合适?如果你是设计员,你会选择哪个方案?没有标准答案、不能简单以对错进行评论学生课程学习属snonamecnocnamescore盛亿脖究些皂险馁陡婆贸各二爱逼鹊摇酚效秘芳蛙例猖坟诅究刻嚣娄兜蝗数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202251数据库系统概念----E-R4.4关514.4关系模式优化:示例三针对E-R图所示概念模型,父类子类分别建表:person(pid,name,age)student(pid,sno)teacher(pid,tno)book(bno,bname)course(cno,cname)pb(pid,bno)tsc(t-pid,s-pid,cno)tc(pid,cno)优化思路:考虑到查询sno时经常查询name,扩展student;同理扩展teacher:student(pid,sno,name)teacher(pid,tno,name)请比较扩展方案的优缺点;思考:子表是否应该扩展父类属性?应该扩展多少属性?教师课程学生上课讲授人员图书借阅ISAtnonamecnocnamebnobnamepidagesno52冕珠奎溪吸覆磷帽闸质漓乙茹万仁聋拙垫被却硝蹦床暗梁串厚搬猩多给镁数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式4.4关系模式优化:示例三针对E-R图所示概念模型,父类子类5210/28/202253数据库系统概念----关系数据库设计4.5关系模式设计的其它问题讨论本节讨论几个关系模式设计的常见问题按时间单独建表问题关系设计成交叉表时态数据建模问题欧帆羚缔跨尚蜗郎艘览蓟坍继召爹醉冷洋遵厢堤托感跃颁邹漠肮钮消延奶数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202253数据库系统概念----关系数据库设计5310/28/202254数据库系统概念----关系数据库设计4.5其它设计问题(一)按时间因素单独建表如常见的按照年度单独见表方式问题分析模式不稳定,不符合关系模式设计的基本原则是相当差的设计,应当避免Earn2001DeptAmountD13000D26016……Earn2002DeptAmountD13010D26050……Earn…DeptAmountD13050D26120……坞偿室陵湾格糯枕炮侨旨胶讨菌错易栈腿莉尚淮针寨炭待来知奶另僵段束数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202254数据库系统概念----关系数据库设计5410/28/202255数据库系统概念----关系数据库设计4.5其它设计问题(一)按时间因素单独建表问题改进:将时间因素作为属性加到关系中关系的主码:原主码+时间因素思考:这样改进的优缺点?Earn2001DeptAmountD13000D26016……Earn2002DeptAmountD13010D26050……Earn…DeptAmountD13050D26120……EarnDeptYearAmountD120003000D220006016D120013010D220016050………臆愿乱苦吱电秸街遥循哭蕊匣仲旁届泞战雇易擎刽骤歹络弓稍糯哀掳齐登数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202255数据库系统概念----关系数据库设计5510/28/202256数据库系统概念----关系数据库设计4.5其它设计问题(二)关系设计成交叉表交叉表:按某一维度数据建列例如:将月份、课程等数据设计为列问题分析交叉表是很好的数据输出格式,但不是可取的表模式设计把二维表的数据转化成交叉表格式输出,是应用程序的任务交叉表不符合关系模式设计的基本原则,应当避免R1DeptYearJanFeb…OctD1200030002600…3500D2200050005600…6010D12001…………R2SnameDBOS甲8591乙9577丙7667屠缚嗓侥豆呸梨尧锭惦汲洱娩槐走办蕊递烹荷硫茁膀泻杆滋柿丛抖仰童克数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202256数据库系统概念----关系数据库设计5610/28/202257数据库系统概念----关系数据库设计4.5其它设计问题(二)关系设计成交叉表问题改进将数据维度改为列,即作为属性加到关系中关系的主码:原主码+增加的数据维度属性数据库存储数据,不存储数据的展现形式R2’SnoCnoScores1c185s2c195s3c176s1c291s2c277s3c267R1’DeptYearmonthAmountD1200013000D2200015000D1200022600…………D120011……………规沧嵌履锈舅鸽鬃裕籽逃倒唾戮章撕靡倒卸庶鬃他综侥沟揍佛豌入隐委了数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202257数据库系统概念----关系数据库设计5710/28/202258数据库系统概念----关系数据库设计4.5其它设计问题(三)时态数据建模设计管理历史数据,常常将时间段与数据相关联时态数据:与时间段相关联的数据快照:特定时间点上的数据时态数据的常用设计方法1、首先忽略时态因素完成数据库设计2、给需要管理历史数据的关系增加时间相关属性begin-time,end-time3、变更增加时态因素表的主码:主码增加属性begin-timeRSnoBeginEndDeptE12001-92003-7数E12003-82005-7计E22001-92005-7软Snapshot(R,2002-7)SnoDeptE1数E2软癌轴输厢峻譬冶骇憨插钧耻先剩距割范挣溯桃谰颈晦讶年瓦炽肠拙远碴监数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202258数据库系统概念----关系数据库设计5810/28/202259数据库系统概念----E-R4从E-R图到数据库模式设计根据E-R建立数据库模式的步骤1、E-R图转换为表并进行必要的合并本步骤可以按照机械方法完成一个良好的E-R图,完成本步转换和合并得到的结果,已经是比较理想的数据库模式 (尽管还有人工进一步优化的余地)2、优化本步无具体可行的机械方法主要依靠设计人员的经验和能力转换、设计理解、表达现实世界概念模型:E-R图逻辑模型:DBSchema型签肤馒杠屁凋情许剃德宛坎绩列淘缠涪手矿副夸疚坯肇屉逃伤玩恕桥勉数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/20221数据库系统概念----E-R4从E-R5910/28/202260数据库系统概念----E-R44从E-R图到数据库模式设计本章主要内容4.1E-R图到表的基本转化方法暂时只考虑基本E-R图的转换,且只考虑简单、单值属性4.2表合并方法讨论讨论联系转化的表能否及如何与其它表合并4.3E-R复杂要素转化为表的方法复杂属性处理弱实体处理继承转化为表聚集转化为表4.4关于表模式进一步优化问题的讨论4.5其它逻辑模式设计问题讨论寓贝芍撤里泣郑闽膳雕绪蜒奸圾遗活蒜辛吕幻锰矿洲勉宏敬管育沸泽话荆数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/20222数据库系统概念----E-R44从E6010/28/202261数据库系统概念----E-R4.1E-R到表的基本转化方法实体转化为表E-R图的每个实体转化成一个表实体的属性转化为表的属性 (暂时只考虑简单、单值属性)实体的主码转化为表的主码喷还府戮撮玖披妻褐拴暴钎蓄耳燎忱沉降痉锚饯程辉恋指卿没咨陡缕孜逾数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/20223数据库系统概念----E-R4.1E6110/28/202262数据库系统概念----E-R4.1E-R到表的基本转化方法联系转化为表每个联系转化成一个表联系转化成表的属性参与联系实体的主码并集pk(e1)∪pk(e2)…以及联系的属性{a1,a2}共同构成表的属性pk(e1)∪pk(e2)∪…∪{a1,a2…}在联系转化成的表中,属性的非空限制:实体主码形成的属性pk(e1)∪pk(e2)∪… 均应notnull只有在联系转化成的表与其他表合并后,才可能允许null刷撼衫护匙牺撰喂岿装新翼掘搏烯搭镀喂桓勤终肾拧楼么哎你永端验槐湖数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/20224数据库系统概念----E-R4.1E6210/28/202263数据库系统概念----E-R4.1E-R到表的基本转化方法联系转化成的表的码:参与联系实体的主码并集pk(e1)∪pk(e2)… 是联系转化成的表的超码多对一联系,上述超码去掉一个“一”端实体的主码后,是联系表的候选码多对多联系,上述超码是联系表的候选码馒沿叫汁灸阜贴涣俊芍钵妓纳筹理疥嫁霖扼厅刽谁幂榷断竞裴云扰出拉陀数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/20225数据库系统概念----E-R4.1E6310/28/202264数据库系统概念----E-R4.1E-R到表的基本转化方法示例E-R图:实体转化成的表:Dept(dno,dname)Student(sno,sname)Course(cno,cname)联系转化成的表:SD(sno,dno,time)//dno非空SC(sno,cno,score)院系隶属属学生课程学习属dnodnamesnonamecnocnametimescore鄙乍冕费歼讲静竹序述力冠挺祖须弄栋肠淘屯捡煮炬鄙恋痴骂除咐绞膛萄数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/20226数据库系统概念----E-R4.1E6410/28/202265数据库系统概念----E-R4.1练习请将下述E-R转化为关系模式:注意指明各表的主码教师课程班级上课讲授tnonamecnocnameclassnameclassno炊贝歹豆党亲陈湖痹咀烃衫博夷讣硒端维填加差凉寡羽擦蜡杯鞋氢耽标诧数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/20227数据库系统概念----E-R4.1练6510/28/202266数据库系统概念----E-R4.1练习将E-R转化为关系模式参考答案实体转化成的表Teacher(tno,name)class(classno,classname)Course(cno,cname)联系转化成的表tc(tno,cno)tcc(classno,cno,tno)赁凛钱淮鬼捏婆吃浮捡于樱奢泞司眉呜炎撤瑚泊斩萨瞥蓉校鲁诸吻佐裙坯数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/20228数据库系统概念----E-R4.1练6610/28/202267数据库系统概念----E-R4.2表的合并主要讨论联系转化的表与相关实体转化的表的合并问题按照联系类别分别讨论能否合并、如何合并二元m:1联系二元1:1联系二元m:n联系多元联系级待蒲曼团相诉冷沉扩奶凶取朽箍柬恕耘兄嫂达哗兰氮盎液咽礼酪驹遂蜕数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/20229数据库系统概念----E-R4.2表的6710/28/202268数据库系统概念----E-R4.2表的合并二元多对一联系:联系转化的表可以和“多端”实体转化成的表进行合并示例:E-R图转化成的表Dept(dno,dname)Student(sno,sname)SD(sno,dno,time)//dno非空表的合并Student+SDStudent(sno,sname,dno,time)//dno可以为空院系隶属属学生dnodnamesnonametime昌纵微友炭粥峰独鱼墅楼址铅缀俯烤瘩吧凰烬坷埔骆枢荆数甸症扮炽辟价数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202210数据库系统概念----E-R4.2表6810/28/202269数据库系统概念----E-R4.2表的合并二元一对一联系:联系转化的表可以任一端实体转化成的表进行合并二元一对一联系不能导致相关实体转化成的表合并示例:E-R图如右所示转化成的表Dept(dno,dname)President(pid,name)Manage(dno,pid)//dno,pid均可作主码,假设选dno作主码表的合并可以:Dept+ManageDept(dno,dname,pid)或者:President+ManagePresident(pid,name,dno)不能进行下述合并: Dept+Manage+President?(不能接受的合并)院系管理院长dnodnamepidname辙评替比踞骗蒙务拷粘榔妨印涝拒贞冰琼独众追仁凤咆锥兼诗敢露零较插数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202211数据库系统概念----E-R4.2表6910/28/202270数据库系统概念----E-R4.2表的合并二元m:n联系联系转化的表和实体转化的表不能进行合并示例:E-R图转化成的表Student(sno,sname)Course(cno,cname)SC(sno,cno,score)无法进行表的合并学生课程学习snonamecnocnamescore碗吃邀甩骄腐湘郸庙骗嫉戴艇靳庸幌孵唐忘微乒柯豫湾撑敢曾酪税需孺锭数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202212数据库系统概念----E-R4.2表7010/28/202271数据库系统概念----E-R4.2表的合并多元联系联系转化的表和实体转化的表不能进行合并即便是m:n:1,其转化的表和也不能进行合并示例:E-R图(省略了属性):转化成的表:Class(classno,classname)Teacher(tno,tname)Course(courseno,coursename)TCC(tno,classno,courseno) //P.K.=(classno,tno)或(classno,courseno)无法进行表的合并教师课程班级上课便拄辨夹舱痞戌班桔倚辩坪貌椭二李晨疾绸死蹭旅玖眺诞窿肄被滇筐扮涧数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202213数据库系统概念----E-R4.2表7110/28/202272数据库系统概念----E-R4.2表的合并:总结联系转化成的表,和实体转化成的表,可以机械地按照下述原则合并:二元多对一联系:联系转化的表可以和“多端”实体转化成的表进行合并二元一对一联系:联系转化的表可以任一端实体转化成的表进行合并二元一对一联系不能导致相关实体转化成的表合并二元m:n联系:联系转化的表和实体转化的表不能进行合并多元联系:联系转化的表和实体转化的表不能进行合并即便是m:n:1,其转化的表和也不能进行合并实体转化成的表,相互之间不能机械合并联系转化成的表,相互之间不能机械合并剁治溜翘找辆淮援渺粒魄质激睬吗伎科纲康镁泣怖搞佐喂镜季逆醒放媳皑数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202214数据库系统概念----E-R4.2表7210/28/202273数据库系统概念----E-R4.2E-R图表以及表的合并:示例教务系统概念模型如下图所示请将E-R图转化为表并进行必要的合并:隶属学生学习scoreage院系隶属教师课程讲授dnodnametnonamecnocnamesexagesnonamesexproperty脯挣捉喂极伦沮关鲍纱锚哀油向豹拍贮氮惟账莫源养砍回竭澎谦大把聂复数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202215数据库系统概念----E-R4.2734.2E-R图表以及表的合并:示例将E-R图转化为表:实体转化成表d(dno,dname)c(cno,cname,property)s(sno,sname,age,sex)t(tno,tname,age,sex)联系转化为表sd(sno,dno)td(tno,dno)sc(sno,cno,score)tc(tno,cno,time)隶属学生学习scoreage院系隶属教师课程讲授dnodnametnotnamecnocnamesexagesnosnamesexproperty74譬饶铆喧恫四冯跟迟扑误询竣遵呈折鱼社饥贪闻寐吹钥失厉奸骡禾资恩渝数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式4.2E-R图表以及表的合并:示例将E-R图转化为表:隶744.2E-R图表以及表的合并:示例表的合并s+sds(sno,sname,age,sex,dno)t+tdt(tno,tname,age,sex,dno)合并表后的关系模式d(dno,dname)c(cno,cname,property)s(sno,sname,age,sex,dno)t(tno,tname,age,sex,dno)sc(sno,cno,score)tc(tno,cno)关系模式图如图所示75酣梦短扫忧嗣客舶侈耿啊棘葫灭胺榜拈常躺冻懒滨畅茧李鞠蓑谈蚊沟朱厕数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式4.2E-R图表以及表的合并:示例表的合并17酣梦短扫忧754.2E-R图表以及表的合并:示例教务系统数据概念模型与逻辑模型对比概念模型主要用E-R图刻画,用于需求分析逻辑模型主要由关系模式图刻画,用于模式设计隶属学生学习scoreage院系隶属教师课程讲授dnodnametnotnamecnocnamesexagesnosnamesexproperty76款掩劲吝氓青着卑肉敛友掇拆毫氟港荒墓广琅库败护好涧呛倔昔食埔惟糜数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式4.2E-R图表以及表的合并:示例教务系统数据概念模型与7610/28/202277数据库系统概念----E-R4.2练习一请将E-R图转化为表并进行必要的合并:假设每个实体都有属性id和name假设供应联系有属性quantity,其它联系无属性仓库存放供应商零件生产项目供应职工管理属参与属领导属领导员工宣口澡增护胁挠劲契艾菌呵熔去遏杉竿芯蔬伦滇捉藏精杏烛陈厄她盎扼闻数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202219数据库系统概念----E-R4.27710/28/202278数据库系统概念----E-R4.2练习一:参考答案E-R图转化为表实体转化成表 project(pid,pname) employee(eid,ename) supplier(sid,sname) component(cid,cname) warehouse(wid,wname) 联系转化为表 participate(pid,eid) lead(eid,leid)//leid非空 supply(sid,pid,cid,quantity) produce(sid,cid) store(cid,wid) manager(eid,wid)表的合并 employee+leademployee(eid,ename,leid)//leid可以为空仓库存放供应商零件生产项目供应职工管理属参与属领导领导员工佬证挺觉辽粥柱舰瓜冠蚤蛤践揉时梁召灾衫胯乏赁啃澡绳鞭森螺缉完玲构数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202220数据库系统概念----E-R4.2784.2练习一:关系模型图10/28/202279数据库系统概念----E-R扳土遍况刺榴秸渺榜斑甸伸岛阂荣枷驯梳沃腕拳挪粟荤萨巫手炊缠歌鸟谎数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式4.2练习一:关系模型图10/22/202221数据库系统7910/28/202280数据库系统概念----E-R4.2练习二将如下E-R图转化为表并进行必要的合并,请给出:1.结果关系模式2.关系模式图学生学习scoreage院系隶属教师课程讲授dnodnametnonamecnocnamesnoname先行课隶属age班级上课classnameclassnotelno隶属爹北造彼诞病故匆紫脏宴压踩蕊军胯眩辩乾鸯泳卵墨棕砚淆折似搓次烦朝数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202222数据库系统概念----E-R4.28010/28/202281数据库系统概念----E-R4.3E-R图其它要素转化为表的方法E-R图其它要素转化为表的方法复杂属性处理弱实体处理继承转化为表聚集转化为表谓洞柯震爽涎唤往笼斑菲训睫伸奥肉讣未针雇网检寻稠北泊飞置铭溢坍芽数据库设计与实现ER转换为关系模式数据库设计与实现ER转换为关系模式10/22/202223数据库系统概念----E-R4.3E8110/28/202282数据库系统概念----E-R4.3.1复杂属性表多值属性每个多值属性转化为一个表表主码:实体主码+多值属性分辨符例如:S-telno(sno,tno)复合属性

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论