数据库第06章_关系数据理(习题课)

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1数据库系统概论第六章关系数据理论(习题课)2难点:判断关系满足的范式关系模式的分解。基本知识点3理解并给出下列术语的定义:函数依赖、部分函数依赖、完全函数依赖、传递依赖、候选码、主码、外码、全码、1NF、2NF、3NF、BCNF、多值依赖、4NF。函数依赖:设R(U)是一个属性集U上的关系模式,X和Y是U的子集。若对于R(U)的任意一个可能的关系r,r中不可能存在两个元组在X上的属性值相等,而在Y上的属性值不等,则称“X函数确定Y”或“Y函数依赖于X”,记作X→Y。基本概念44函数依赖的基本概念×√×××√55若X→Y,但YX,则称X→Y是平凡函数依赖;(对于任一关系,平凡函数依赖必然成立)如果X→Y,但YX,则称X→Y是非平凡函数依赖。几种函数依赖类型(一):例:Sno→Sno(Sno,Cname)→CnameSno→Sdept(Sno,Cname)→Grade平凡函数依赖不反映新的语义,无实际意义和价值;无特别声明,均讨论有语义价值的非平凡依赖。66几种函数依赖类型(二):在关系模式R(U)中,如果X→Y,并且对于X的任何一个真子集X’,都有X’Y,则称Y完全函数依赖于X,记作XY,否则称Y部分函数依赖于X,记作XY。fP例:(Sno,Cname)→Grade(Sno,Cname,Sdept)→Grade(Sno,Cname,Mname)→Grade真正起作用的函数依赖;派生出的函数依赖;不完全函数依赖或部分函数依赖的存在使依赖关系复杂化。fPP77几种函数依赖类型(三):在关系模式R(U)中,如果X→Y,Y→Z,且YX,YX,则称Z传递函数依赖于X。若Y→X,则X←→Y,实际上是X→Z,即直接函数依赖。例:Sno→Sdept,Sdept→Mname,Sno→MnameSno→Sid,Sid→Stel,Sno→Stel传递函数依赖与非传递/直接函数依赖形式表示相同;传递函数依赖的存在使依赖关系复杂化,其语义关系比较复杂,容易产生异常及冗余。88课堂练习题:下列关于函数依赖的叙述中,哪一条是不正确的?(A)若X→Y,Y→Z,则X→Z(B)若X→Y,Y’Y,则X→Y’(C)若X→Y,X’X,则X’→Y(D)若X’X,则X→X’解析:C99课堂练习题:(续)下列哪一项成立时,称X→Y为平凡的函数依赖()(A)X∩Y=空(B)X∪Y=空(C)XY(D)YX解析:D1010课堂练习题:(续)下列关于Y对X部分函数依赖的叙述中正确的是()(A)若X→Y,且存在Y的真子集Y’,X→Y’,则称…(B)若X→Y,且存在Y的真子集Y’,X→Y’,则称…(C)若X→Y,且存在X的真子集X’,X’→Y,则称…(D)若X→Y,且存在Y的真子集X’,X’→Y,则称…解析:C1111课堂练习题:(续)下述不是由于关系模式设计不当而引起的是()(A)数据冗余(B)丢失修改(C)插入异常(D)更新异常解析:B,丢失修改属于并发操作带来的数据不一致性。12候选码:设K为关系模式RU,F中的属性或属性组合,若KfU,则K称为R的一个侯选码。主码若候选码多于一个,则选定其中的一个为主码。外码:关系模式R中属性或属性组X并非R的码,但X是另一个关系模式的码,则称X是R的外码。全码:整个属性组是码,称为全码。码(由函数依赖的概念来定义)1313码(续)定义关系模式R中属性或属性组X并非R的码,但X是另一个关系模式的码,则称X是R的外部码(ForeignKey)也称外码。00322张林200101300221顾芳200101200120李华2001011SdeptSageSnameSnoStudent王五管理003李四计算机002张三自动化001MnameDnamedeptIDDepartmentFK主码和外码表示了关系之间的联系。1414课堂练习题:下列关于关系模式的码的叙述中,哪一条是正确的?()(A)主码只能包含单属性(B)任何候选码都不能包含关系中的全部属性(C)包含在任一个候选码中的属性称作主属性(D)包含在素有候选码中的属性称作主属性解析:C15159.3范式(续)各种范式之间存在联系:1NF2NF3NFBCNF4NF……某一关系模式R为第n范式,可简记为R∈nNF。1616课堂练习题:下列关于关系模式规范化的叙述中,哪一条是不正确的?()(A)若R∈4NF,则必然R∈3NF(B)若R∈3NF,则必然R∈2NF(C)若R∈2NF,则必然R∈1NF(D)若R∈3NF,则必然R∈BCNF解析:D17测验1.关系数据库规范化是为解决关系数据库中的_______问题而引入的。A.操作异常和数据冗余B.提高查询速度C.减少数据操作的复杂性D.保证数据的安全性和完整性2.假设关系模式属于R(A,B)属于3NF,下列说法中_____是正确的。A.它一定消除了插入和删除异常B.仍存在一定的插入或删除异常C.一定属于BCNFD.B和C均是正确的18测验3.当B属性函数依赖于A属性时,属性A与B的关系是____A.一对多B.多对一C.多对多D.以上都不对4.候选码中的属性称为_____。A.非主属性B.主属性C.复合属性D.关键属性5.关系模式R中的属性全部是主属性,则R的最低范式必定是_______。A.2NFB.3NFC.BCNFD.4NF19测验6.设有关系W(工号,姓名,工种,定额),将其规范化到3NF正确的答案是_______。A.W1(工号,姓名)和W2(工种,定额)B.W1(工号,工种,定额)和W2(工号,姓名)C.W1(工号,姓名,工种)和W2(工种,定额)D.以上都不对7.关系模式R(A,B,C,D)中,有函数依赖集F={B→C,C→D,D→A},则R能达到_______。A.1NFB.2NFC.3NFD.BCNF20测验8.下列规则中正确的是_______。A.若X→Y,WY→Z,则WX→ZB.若XY,则X→YC.若XY→Z,则X→Z,Y→ZD.若X∩Y=φ,则X→Y21测验9.设有关系模式R(A,B,C,D)及其函数依赖集F={D→B,B→D,AD→B,AC→D},请判断R满足的范式。10.设有关系模式R(A,B,C,D,E,P)及其函数依赖集F={A→D,E→D,D→B,BC→D,DC→A},求R的所有候选码。22练习11.设有关系模式教务(学号,课程号,学生姓名,年龄,成绩,教师姓名,教师年龄,教师办公室)。假设一门课程只有一名教师讲授,而且教师不重名。试回答下列问题:(1)存在哪些基本函数依赖?该关系模式的候选码是什么?有哪些主属性?(2)有部分依赖吗?若有,请写出两个?有传递依赖吗?若有,请写出一个?(3)关系模式教务最高达到第几范式?为什么?(4)如何分解可消除关系模式中的部分函数依赖?(5)分解后达到了几范式?分解是无损连接分解?(6)分别指出各个关系模式的主码和外码2312.已知:关系模式R(U,F)中,U=ABCDEG.F={BG→C,BD→E,DG→C,ADG→BC,AG→B,B→D}求:(1)R的侯选码(2)R最高满足第几范式13.设有关系模式R(职工号,项目名,工资,部门名,部门经理)如果规定:每个职工可以参加多个项目,各领一份工资;每个项目只属于一个部门管,每个部门只有一个经理。(1)写出该关系模式的函数依赖集合。(2)判断候选码。(3)说明不满足2NF的理由,并把R分解为2NF的模式集24测验14.说明下列关系模式最高满足几范式,并说明理由。(1)R(A,B,C,D),F={B→D,AB→C}(2)R(X,Y,Z),F={Y→Z,Y→X,X→YZ}(3)R(A,B,C,D),F={B→D,D→B,AB→C}(4)R(X,Y,Z)F={XY→Z}(5)R(A,B,C),F={A→B,B→C,C→A}(6)R(A,B,C,D)F={A→C,D→B}(7)R(A,B,C,D)F={A→C,CD→B}(8)R(X,Y,Z)F={Y→Z,XZ→Y}(9)R(A,B,C,D,E)F={AB→CE,E→AB,C→D}(10)R(X,Y,Z)F={X→Y,X→Z}25作业建立一个关于系、学生、班级、学会等诸信息的关系数据库。描述学生的属性有:学号、姓名、生日、系名、班号、宿舍区。描述班级的属性有:班号、专业名、系名、人数、入校年份。描述系的属性有:系号、系名、系办公室地点、人数。描述学会的属性有:学会名、成立年份、地点、人数。•有关语义如下:一个系有若干专业,每个专业每年只招一个班,每个班有若干学生。一个系的学生住在同一宿舍区。每个学生可参加若干学会,每学会有若干学生。学生参加某学会有一个入会年份。26作业(1)学生关系模式:学生关系模式:S(Sno,Sname,Sbirth,Sdept,Cno,Sloc)极小函数依赖集为:S:Sno→Sname,Sno→Sbirth,Sno→Cno,Cno→Sdept,Sdept→Sloc候选码:SnoS中存在传递函数依赖:Cno→Sdept,Sdept→Sloc,Cno→Sloc27作业(2)班级关系模式:关系模式:C(Cno,Cspec,Sdept,Cnum,Cdate)极小函数依赖集为:C:Cno→Cspec,Cspec→Sdept,Cno→CnumCno→Cdate,(Cspec,Cdate)→Cno候选码:Cno和(Cspec,Cdate)C中存在:Cno→Sdept传递函数依赖(Cspec,Cdate)→Sdept是部分函数依赖28作业(3)系关系模式:关系模式:系D(Dno,Dname,Dloc,Dnum)极小函数依赖集为:D:Dno→Dname,Dname→Dno,Dno→DlocDno→Dnum候选码:Dno,Dname29作业(4)学会关系模式:学会关系模式P:(Pname,Pdate1,Ploc,Pnum)极小函数依赖集为:P:Pname→Pdate1,Pname→Ploc,Pname→Pnum候选码:Pname(5)学生-学会关系模式:学生–学会关系模式SP(Sno,Pname,date2)函数依赖:(Sno,Pname)→date2候选码:(Sno,Pname)30作业关系候选码外部码全码SSnoCno,Dno无CCno和(CS,CDATE)Dno无DDno和Dname无无PPname无无SP(Sno,Pname)Sno,Pname无31作业12.下面的结论哪些是正确的,哪些是错误的?对于错误的结论请给出理由或给出一个反例说明之。答:⑴任何一个二目关系都是属于3NF的。⑵任何一个二目关系都是属于BCNF的。⑶任何一个二目关系都是属于4NF的。⑷当且仅当函数依赖A→B在R上成立,关系R(A,B,C)等于其投影R1(A,B)和R2(A,C)的连接。√×当A→B在R上成立,关系R(A,B,C)等于其投影R1(A,B)和R2(A,C)的连接。反之则不然。正确的是当且仅当函数依赖A→→B在R上成立,关系R(A,B,C)等于其投影R1(A,B)和R2(A,C)的连接。√√32作业⑸若R.A→R.B,R.B→R.C,则R.A→R.C⑹若R.A→R.B,R.A→R.C,则R.A→R.(B,C)⑺若R.B→R.A,R.C→R.A,则R.(B,C)→R.A⑻若R.(B,C)→R.A,则R.B→R.A,R.C→R.A√×√√反例:关系模式SC(Sno,Cno,G),(Sno,Cno)→G,但Sno↛G,Cno↛G33作业.第五章图5.12表示一个公司各部门的层次结构。对每个部门,数据库中包含部门号(唯一的)D#、预算费(BUDGET)以及此部门领导人员的职工号E#(唯一的)信息。职工信息包括:职工号、他所参加的生产与科研项目号(J#)、他所在办公室的电话号码(PHONE#)。生产与科研项目包含:项目号(唯一的)、预算费。办公室信息包含办公室房间号(唯一的)、面积。对每个职工,数据库中有他曾担任过的职务以及担任某一职务时的工资历史。对每个办公室包含此办公室中全部电话号码的信息。请给出你认为合理的数据依赖,把这个层次结构转

1 / 36
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功