数据库设计与实现er转换为关系模式.ppt
《数据库设计与实现er转换为关系模式.ppt》由会员分享,可在线阅读,更多相关《数据库设计与实现er转换为关系模式.ppt(58页珍藏版)》请在三一办公上搜索。
1、2023年10月14日星期六,1,数据库系统概念-E-R,4从E-R 图到数据库模式设计,根据E-R建立数据库模式的步骤1、E-R图转换为表并进行必要的合并本步骤可以按照机械方法完成一个良好的E-R图,完成本步转换和合并得到的结果,已经是比较理想的数据库模式(尽管还有人工进一步优化的余地)2、优化本步无具体可行的机械方法主要依靠设计人员的经验和能力,2023年10月14日星期六,2,数据库系统概念-E-R,4 4从E-R 图到数据库模式设计,本章主要内容4.1E-R图到表的基本转化方法暂时只考虑基本E-R图的转换,且只考虑简单、单值属性4.2表合并方法讨论讨论联系转化的表能否及如何与其它表合并
2、4.3E-R复杂要素转化为表的方法复杂属性处理弱实体处理继承转化为表聚集转化为表4.4关于表模式进一步优化问题的讨论4.5其它逻辑模式设计问题讨论,2023年10月14日星期六,3,数据库系统概念-E-R,4.1 E-R 到表的基本转化方法,实体转化为表E-R图的每个实体转化成一个表实体的属性转化为表的属性(暂时只考虑简单、单值属性)实体的主码转化为表的主码,2023年10月14日星期六,4,数据库系统概念-E-R,4.1 E-R 到表的基本转化方法,联系转化为表每个联系转化成一个表联系转化成表的属性参与联系实体的主码并集pk(e1)pk(e2)以及联系的属性a1,a2共同构成表的属性pk(e
3、1)pk(e2)a1,a2在联系转化成的表中,属性的非空限制:实体主码形成的属性pk(e1)pk(e2)均应not null只有在联系转化成的表与其他表合并后,才可能允许null,2023年10月14日星期六,5,数据库系统概念-E-R,4.1 E-R 到表的基本转化方法,联系转化成的表的码:参与联系实体的主码并集pk(e1)pk(e2)是联系转化成的表的超码多对一联系,上述超码去掉一个“一”端实体的主码后,是联系表的候选码多对多联系,上述超码是联系表的候选码,2023年10月14日星期六,6,数据库系统概念-E-R,4.1 E-R到表的基本转化方法示例,E-R图:实体转化成的表:Dept(d
4、no,dname)Student(sno,sname)Course(cno,cname)联系转化成的表:SD(sno,dno,time)/dno非空SC(sno,cno,score),2023年10月14日星期六,7,数据库系统概念-E-R,4.1 练习,请将下述E-R转化为关系模式:注意指明各表的主码,2023年10月14日星期六,8,数据库系统概念-E-R,4.1 练习,将E-R转化为关系模式参考答案实体转化成的表Teacher(tno,name)class(classno,classname)Course(cno,cname)联系转化成的表tc(tno,cno)tcc(classno,c
5、no,tno),2023年10月14日星期六,9,数据库系统概念-E-R,4.2表的合并,主要讨论联系转化的表与相关实体转化的表的合并问题按照联系类别分别讨论能否合并、如何合并二元m:1联系二元1:1联系二元m:n联系多元联系,2023年10月14日星期六,10,数据库系统概念-E-R,4.2表的合并,二元多对一联系:联系转化的表可以和“多端”实体转化成的表进行合并示例:E-R图转化成的表Dept(dno,dname)Student(sno,sname)SD(sno,dno,time)/dno非空表的合并Student+SD Student(sno,sname,dno,time)/dno可以为
6、空,2023年10月14日星期六,11,数据库系统概念-E-R,4.2表的合并,二元一对一联系:联系转化的表可以任一端实体转化成的表进行合并二元一对一联系不能导致相关实体转化成的表合并示例:E-R图如右所示转化成的表Dept(dno,dname)President(pid,name)Manage(dno,pid)/dno,pid均可作主码,假设选dno作主码表的合并可以:Dept+Manage Dept(dno,dname,pid)或者:President+ManagePresident(pid,name,dno)不能进行下述合并:Dept+Manage+President?(不能接受的合并)
7、,2023年10月14日星期六,12,数据库系统概念-E-R,4.2表的合并,二元m:n联系联系转化的表和实体转化的表不能进行合并示例:E-R图转化成的表Student(sno,sname)Course(cno,cname)SC(sno,cno,score)无法进行表的合并,2023年10月14日星期六,13,数据库系统概念-E-R,4.2表的合并,多元联系联系转化的表和实体转化的表不能进行合并即便是m:n:1,其转化的表和也不能进行合并示例:E-R图(省略了属性):转化成的表:Class(classno,classname)Teacher(tno,tname)Course(courseno,
8、coursename)TCC(tno,classno,courseno)/P.K.=(classno,tno)或(classno,courseno)无法进行表的合并,2023年10月14日星期六,14,数据库系统概念-E-R,4.2表的合并:总结,联系转化成的表,和实体转化成的表,可以机械地按照下述原则合并:二元多对一联系:联系转化的表可以和“多端”实体转化成的表进行合并二元一对一联系:联系转化的表可以任一端实体转化成的表进行合并二元一对一联系不能导致相关实体转化成的表合并二元m:n联系:联系转化的表和实体转化的表不能进行合并多元联系:联系转化的表和实体转化的表不能进行合并即便是m:n:1,其
9、转化的表和也不能进行合并实体转化成的表,相互之间不能机械合并联系转化成的表,相互之间不能机械合并,2023年10月14日星期六,15,数据库系统概念-E-R,4.2 E-R图表以及表的合并:示例,教务系统概念模型如下图所示请将E-R图转化为表并进行必要的合并:,4.2 E-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)
10、,隶属,学生,学习,score,age,院系,隶属,教师,课程,讲授,dno,dname,tno,tname,cno,cname,sex,age,sno,sname,sex,property,16,4.2 E-R图表以及表的合并:示例,表的合并s+sds(sno,sname,age,sex,dno)t+td t(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)关系模
11、式图如图所示,17,4.2 E-R图表以及表的合并:示例,教务系统数据概念模型与逻辑模型对比概念模型主要用E-R图刻画,用于需求分析逻辑模型主要由关系模式图刻画,用于模式设计,18,2023年10月14日星期六,19,数据库系统概念-E-R,4.2 练习一,请将E-R图转化为表并进行必要的合并:假设每个实体都有属性id和name假设供应联系有属性quantity,其它联系无属性,2023年10月14日星期六,20,数据库系统概念-E-R,4.2 练习一:参考答案,E-R图转化为表实体转化成表project(pid,pname)employee(eid,ename)supplier(sid,sn
12、ame)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可以为空,4.2 练习一:关系模型图,2023年10月14日星期六,21,数据库系统概念-E-R,2023年10月14日星期六,22,数据库系统概念-E-R,4.2 练习二,将如
13、下E-R图转化为表并进行必要的合并,请给出:1.结果关系模式2.关系模式图,2023年10月14日星期六,23,数据库系统概念-E-R,4.3E-R图其它要素转化为表的方法,E-R图其它要素转化为表的方法复杂属性处理弱实体处理继承转化为表聚集转化为表,2023年10月14日星期六,24,数据库系统概念-E-R,复杂属性表,多值属性每个多值属性转化为一个表表主码:实体主码+多值属性分辨符例如:S-telno(sno,tno)复合属性只保留叶节点属性派生属性一般表模式中不保留派生属性S(sno,sname,birthday,city,street)如果考虑使用频率、查询效率等因素,可以保留派生属性
14、,尽管本质上派生属性是表的冗余属性,2023年10月14日星期六,25,数据库系统概念-E-R,复杂属性表,示例,学生实体转化为表:所有单值属性转化为一个表S(sno,sname,birthday,city,street)每个多值属性转化为一个表S-telno(sno,tno)S-relative(sno,pid,relation,name)思考:S-relative中,pid属性是否可以单独构成主码?不同多值属性转化的表可以合并吗?,2023年10月14日星期六,26,数据库系统概念-E-R,弱实体表,弱实体转化为表弱实体象普通实体一样向表转化,只是在弱实体转化的表中,增加属主实体的主码作为
15、表属性弱实体转化成表的主码:属主实体的主码+弱实体的分辨符标识性联系不转化成表,不作处理,弱实体表:示例,示例:请将如下所示银行帐户E-R图转化为表,弱实体表:示例,将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,dealn
16、um,rualdate,eno),弱实体vs强实体,练习:对上述银行账户,如果在E-R中不使用弱实体,而是通过给交易记录、利息记录增加标识属性是成为强实体,试给出相应E-R图试将上述E-R图转化为表并进行必要的合并体会、比较两种E-R图对应概念模型及逻辑模型的差异,你更喜欢哪一种?,强实体&表:参考方案,将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(t
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 设计 实现 er 转换 关系 模式
链接地址:https://www.31ppt.com/p-6296602.html