您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 第06章_关系数据理论(习题课)
1数据库系统概论AnIntroductiontoDatabaseSystem第六章关系数据理论(习题课)2基本知识点需要了解的:1.什么是一个“不好”的数据库模式;2.什么是关系模式的操作异常;3.规范化理论的重要意义。3基本知识点需要牢固掌握的:1.关系的形式化定义;2.数据依赖的基本概念(函数依赖、平凡函数依赖、非平凡函数依赖、部分函数依赖、完全函数依赖、传递函数依赖、码、候选码、外码);3.范式的概念;4.从1NF到BCNF的定义;5.规范化的含义和作用。4需要举一反三的:1.四个范式的理解与应用2.能根据数据依赖分析某一个关系模式属于第几范式;3.能够根据应用语义,完整地写出关系模式的函数依赖集合,并求出最小依赖集;4.能确定关系模式R的候选码;5.能判断模式分解是否具有无损连接性和保持函数依赖6.掌握模式分解的方法基本知识点5难点:判断关系满足的范式关系模式的分解。基本知识点6理解并给出下列术语的定义:函数依赖、部分函数依赖、完全函数依赖、传递依赖、候选码、主码、外码、全码、1NF、2NF、3NF、BCNF、多值依赖、4NF。函数依赖:设R(U)是一个属性集U上的关系模式,X和Y是U的子集。若对于R(U)的任意一个可能的关系r,r中不可能存在两个元组在X上的属性值相等,而在Y上的属性值不等,则称“X函数确定Y”或“Y函数依赖于X”,记作X→Y。基本概念77函数依赖的基本概念×√×××√8解析:⑴函数依赖是最基本的、也是最重要的一种数据依赖。⑵函数依赖是属性之间的一种联系,体现在属性值是否相等。由定义可知,若X→Y,则r中任意两个元组,如果它们在X上的属性值相等,那么在Y上的属性值也一定相等。⑶要从属性间实际存在的语义来确定属性间的函数依赖。⑷函数依赖不是指关系模式R在某个时刻的关系(值)满足的约束条件,而是指R在任何时刻的一切关系均要满足的约束条件。基本概念99若X→Y,但YX,则称X→Y是平凡函数依赖;(对于任一关系,平凡函数依赖必然成立)如果X→Y,但YX,则称X→Y是非平凡函数依赖。几种函数依赖类型(一):例:Sno→Sno(Sno,Cname)→CnameSno→Sdept(Sno,Cname)→Grade平凡函数依赖不反映新的语义,无实际意义和价值;无特别声明,均讨论有语义价值的非平凡依赖。1010几种函数依赖类型(二):在关系模式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真正起作用的函数依赖;派生出的函数依赖;不完全函数依赖或部分函数依赖的存在使依赖关系复杂化。fPP1111几种函数依赖类型(三):在关系模式R(U)中,如果X→Y,Y→Z,且YX,YX,则称Z传递函数依赖于X。若Y→X,则X←→Y,实际上是X→Z,即直接函数依赖。例:Sno→Sdept,Sdept→Mname,Sno→MnameSno→Sid,Sid→Stel,Sno→Stel传递函数依赖与非传递/直接函数依赖形式表示相同;传递函数依赖的存在使依赖关系复杂化,其语义关系比较复杂,容易产生异常及冗余。1212课堂练习题:下列关于函数依赖的叙述中,哪一条是不正确的?(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’解析:C1313课堂练习题:(续)下列哪一项成立时,称X→Y为平凡的函数依赖()(A)X∩Y=空(B)X∪Y=空(C)XY(D)YX解析:D1414课堂练习题:(续)下列关于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,则称…解析:C1515课堂练习题:(续)下述不是由于关系模式设计不当而引起的是()(A)数据冗余(B)丢失修改(C)插入异常(D)更新异常解析:B,丢失修改属于并发操作带来的数据不一致性。16候选码:设K为关系模式RU,F中的属性或属性组合,若KfU,则K称为R的一个侯选码。主码若候选码多于一个,则选定其中的一个为主码。外码:关系模式R中属性或属性组X并非R的码,但X是另一个关系模式的码,则称X是R的外码。全码:整个属性组是码,称为全码。码(由函数依赖的概念来定义)1717码(续)定义关系模式R中属性或属性组X并非R的码,但X是另一个关系模式的码,则称X是R的外部码(ForeignKey)也称外码。00322张林200101300221顾芳200101200120李华2001011SdeptSageSnameSnoStudent王五管理003李四计算机002张三自动化001MnameDnamedeptIDDepartmentFK主码和外码表示了关系之间的联系。1818课堂练习题:下列关于关系模式的码的叙述中,哪一条是正确的?()(A)主码只能包含单属性(B)任何候选码都不能包含关系中的全部属性(C)包含在任一个候选码中的属性称作主属性(D)包含在素有候选码中的属性称作主属性解析:C19199.3范式(续)各种范式之间存在联系:5NF4NFBCNF3NF2NF1NF1NF2NF3NFBCNF4NF……某一关系模式R为第n范式,可简记为R∈nNF。2020课堂练习题:下列关于关系模式规范化的叙述中,哪一条是不正确的?()(A)若R∈4NF,则必然R∈3NF(B)若R∈3NF,则必然R∈2NF(C)若R∈2NF,则必然R∈1NF(D)若R∈3NF,则必然R∈BCNF解析:D21测验1.关系数据库规范化是为解决关系数据库中的_______问题而引入的。A.操作异常和数据冗余B.提高查询速度C.减少数据操作的复杂性D.保证数据的安全性和完整性2.假设关系模式属于R(A,B)属于3NF,下列说法中_____是正确的。A.它一定消除了插入和删除异常B.仍存在一定的插入或删除异常C.一定属于BCNFD.B和C均是正确的22测验3.当B属性函数依赖于A属性时,属性A与B的关系是____A.一对多B.多对一C.多对多D.以上都不对4.候选码中的属性称为_____。A.非主属性B.主属性C.复合属性D.关键属性5.关系模式R中的属性全部是主属性,则R的最低范式必定是_______。A.2NFB.3NFC.BCNFD.4NF23测验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.BCNF24测验8.下列规则中正确的是_______。A.若X→Y,WY→Z,则WX→ZB.若XY,则X→YC.若XY→Z,则X→Z,Y→ZD.若X∩Y=φ,则X→Y25测验9.设有关系模式R(A,B,C,D)及其函数依赖集F={D→B,B→D,AD→B,AC→D},求(AC)F+和(AB)F+。10.设有关系模式R(A,B,C,D,E,P)及其函数依赖集F={A→D,E→D,D→B,BC→D,DC→A},求R的所有候选码。26练习11.设有关系模式教务(学号,课程号,学生姓名,年龄,成绩,教师姓名,教师年龄,教师办公室)。假设一门课程只有一名教师讲授,而且教师不重名。试回答下列问题:(1)存在哪些基本函数依赖?该关系模式的候选码是什么?有哪些主属性?(2)有部分依赖吗?若有,请写出两个?有传递依赖吗?若有,请写出一个?(3)关系模式教务最高达到第几范式?为什么?(4)如何分解可消除关系模式中的部分函数依赖?(5)分解后达到了几范式?分解是无损连接分解?(6)分别指出各个关系模式的主码和外码2712.已知:关系模式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的模式集28测验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}29作业建立一个关于系、学生、班级、学会等诸信息的关系数据库。描述学生的属性有:学号、姓名、生日、系名、班号、宿舍区。描述班级的属性有:班号、专业名、系名、人数、入校年份。描述系的属性有:系号、系名、系办公室地点、人数。描述学会的属性有:学会名、成立年份、地点、人数。•有关语义如下:一个系有若干专业,每个专业每年只招一个班,每个班有若干学生。一个系的学生住在同一宿舍区。每个学生可参加若干学会,每学会有若干学生。学生参加某学会有一个入会年份。30作业(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→Sloc31作业(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是部分函数依赖32作业(3)系关系模式:关系模式:系D(Dno,Dname,Dloc,Dnum)极小函数依赖集为:D:Dno→Dname,Dname→Dno,Dno→DlocDno→Dnum候选码:Dno,Dname33作业(4)学会关系模式:学会关系模式P:(Pname,Pdate1,Ploc,Pnum)极小函数依赖集为:P:Pname→Pdate1,Pname→Ploc,Pname→Pnum候选码:Pname(5)学生-学会关系模式:学生–学会关系模式SP(Sno,Pname,date2)函数依赖:(Sno,Pname)→date2候选码:(Sno,Pname)34作业关系候选码外部码全码SSnoCno,Dno无CCno和(CS,CDATE)Dno无DDno和Dname无无PPname无无SP(Sno,Pname)Sno,Pname无35作业12.下面的结论哪些是正确的,哪些是错误的?对于错误的结论请给出理由或给出一个反例说明之。答:⑴任何一个二目关系都是属于3NF的。⑵任何一个二目关系都是属于BCNF的。⑶任何一个二目关系都是属于4NF的。⑷当且仅当函数依赖A→
本文标题:第06章_关系数据理论(习题课)
链接地址:https://www.777doc.com/doc-3360046 .html