6_关系数据理论_习题_

上传人:小** 文档编号:92320216 上传时间:2019-07-09 格式:PPT 页数:22 大小:310.50KB
返回 下载 相关 举报
6_关系数据理论_习题__第1页
第1页 / 共22页
6_关系数据理论_习题__第2页
第2页 / 共22页
6_关系数据理论_习题__第3页
第3页 / 共22页
6_关系数据理论_习题__第4页
第4页 / 共22页
6_关系数据理论_习题__第5页
第5页 / 共22页
点击查看更多>>
资源描述

《6_关系数据理论_习题_》由会员分享,可在线阅读,更多相关《6_关系数据理论_习题_(22页珍藏版)》请在金锄头文库上搜索。

1、关系数据理论,实例分析,1、下表给出一数据集,请判断它是否可直接作为关系数据库中的关系,若不行,则改造成为尽可能好的并能作为关数据库中关系的形式,同时说明进行这种改造的理由。,解:因为关系模式至少是1NF关系,即不包含重复组并且不存在嵌套结构,给出的数据集显然不可直接作为关系数据库中的关系,改造为1NF的关系如下所示。,2、设有一教学管理数据库,其属性为:学号(S#),课程号(C#),成绩(G),任课教师(TN),教师所在的系(D)。这些数据有下列语义: 学号和课程号分别与其代表的学生和课程一一对应。 一个学生所修的每门课程都有一个成绩。 每门课程只有一位任课教师,但每位教师可以有多门课程。

2、教师中没有重名,每个教师只属于一个系。 试根据上述语义确定函数依赖集。 如果用上面所有属性组成一个关系模式,那么该关系模式为何模式?并举例说明在进行增、删操作时的异常现象。 分解为具有依赖保持和无损连接的3NF。,3、下表给出的关系R为第几范式?是否存在操作异常?若存在,则将其分解为高一级范式。分解完成的高级范式中是否可以避免分解前关系中存在的操作异常?,解:它为1NF。因为该关系的候选码为(工程号,材料号),而非主属性“开工日期”和“完工日期”部分函数依赖于候选码的子集“工程号”,即: 它不是2NF。 它存在操作异常,如果工程项目确定后,若暂时未用到材料,则该工程的数据因缺少码的一部分(材料

3、号)而不能进入到数据库中,出现插入异常。若某工程下马,则删去该工程的操作也可能丢失材料方面的信息。 将其中的部分函数依赖分解为一个独立的关系,则产生如下所示的两个2NF关系模式: 分解后,新工程确定后,尽管还未用到材料,该工程数据可在关系R2中插入。某工程数据删除时,仅对关系R2操作,也不会丢失材料方面的信息。,4、设有如下所示的关系R。 (1)它为第几范式?为什么? (2)是否存在删除操作异常?若存在,则说明是在什么情况下发生? (3)将它分解为高一级范式,分解后的关系如何解决分解前可能存在的删除操作的异常问题。,解:(1)它是2NF。 R的候选码为课程名,而“课程名教师名”,“教师名课程名

4、”不成立,“教师名教师地址”,即存在非主属性教师地址对候选码课程名的传递函数依赖,因此R不是3NF。 又不存在非主属性对候选码的部分函数依赖,R是2NF。 (2)存在。当删除某门课程时会删除不该删除的教师的有关信息(例如教师地址)。 (3)分解为高一级范式如下所示。 分解后,若删除课程数据时,仅对关系R1操作,教师地址信息在关系R2中仍然保留,不会丢失教师方面的信息。,5、设有如下所示的关系R。 试问R是否属于3NF?为什么?若不是,它属于第几范式?并如何规范化为3NF?,解:R不属于3NF,它是2NF。 R的候选码为职工号和职工名,而:职工号单位号,单位号职工号不成立,单位号单位名。 ,即存

5、在非主属性单位名对候选码职工号的传递函数依赖。规范化后的关系子模式为如下所示的关系R1与R2。,6、下面给出的关系SC为第几范式?是否存在插入删除异常?若存在,则说明是在什么情况下发生?发生的原因是什么?将它分解为高一级范式,分解后的关系能否解决操作异常问题? 其中:SNO为学号,CNO为课程号,CTITLE为课程名,INAME为教师名,ILOCA为教师地址,GRADE为成绩。,解:SC为1NF。 它存在插入、删除异常操作。当增设一门新课程时,因还没有学生选修,则缺少码的一部分,SNO不能执行插入操作;当所有学生退选某门课程而进行删除操作时,会将不该删除的课程信息删除掉。 SC关系中存在插入和

6、删除操作异常的原因在于,该关系的候选码为(SNO,CNO),其中仅有非主属性GRADE完全函数依赖于(SNC,CNO),其他非主属性CTITLE,INAME,ILOCA都只函数依赖于CNO,即它们与(SNO,CNO)为部分函数依赖关系。分解后的关系模式如下所示。,分解后的两个关系模式都为2NF,并解决了先前的插入、删除异常。当增设一门新课程时,可将数据插入到CI表中;当所有学生退选某门课程时,只需删除SG表中的有关记录,而该课程的有关信息仍保留在CI表中。 分解2NF后的CI关系仍存在插入、删除操作异常。若有一个新教师报到,需将其有关数据插入到CI中去,但该教师暂时还未承担任何教学工作,则因缺

7、少码CNO值而不能进行插入操作;当取消某门课程而删除CI表中的一条记录,会将不该删除的教师的有关信息删除。CI表中出现操作异常的原因是该关系中存在非主属性对候选码的传递函数依赖: 将CI进一步分解为如下所示的Course和Instructor两个关系,可以解决上述操作异常。,7、建立关于系学生班级社团等信息的一个关系数据库,一个系有若干个专业,每个专业每年只招一个班,每个班有若干学生,一个系的学生住在同一宿舍区,每个学生可以参加若干个社团,每个社团有若干个学生。 描述学生的属性有:学号、姓名、出生年月、系名、班级号、宿舍区。 描述班级的属性有:班级号、专业号、系名、人数、入学年份。 描述系的属

8、性有:系名、系号、办公室地点、人数。 描述社团的属性有:社团名、成立年份、地点、人数、学生参加某社团的年份。 请给出关系模式,指出是否存在传递函数依赖,对于函数依赖左部是多属性的情况讨论函数依赖是完全函数依赖,还是部分函数依赖。 指出各关系的候选码、外码,有没有全码存在?,(5)学生参加社团关系 学生社团(学号,社团名,入团年份) 候选码:(学号,社团名) 外码:学号,社团名 最小依赖集Fm=(学号,社团名)入团年份, (学号,社团名)入团年份是完全函数依赖。 以上各关系无全码存在。,(4)社团关系 社团(社团名,成立年份,地点,人数) 候选码:社团名 无外码 最小依赖集Fm=社团名成立年份,

9、社团名地点,社团名人数,(3)系关系 系(系号,系名,办公室地点,人数) 候选码:“系号”或“系名” 无外码 最小依赖集Fm=系号系名,系号办公室地点,系号人数,系名系号,8、指出下列关系模式是第几范式?并说明理由。 R(X,Y,Z) F=XYZ R(X,Y,Z) F=XYZ,XZY R(X,Y,Z) F=YZ,YX,XYZ , X Z R(X,Y,Z) F=XY,XZ R(W,X,Y,Z) F=XZ,WXY,解: R是BCNF。R候选码为XY,F中只有一个函数依赖,而该函数依赖的左部包含了R的候选码XY。 R是3NF。R候选码为XY和XZ,R中所有属性都是主属性,不存在非主属性对候选码的传递

10、依赖。 R是BCNF。R候选码为X和Y,XYZ,XY,XZ,由于F中有YZ,YX,因此Z是直接函数依赖于X,而不是传递函数依赖于X。又F的每一函数依赖的左部都包含了任一候选码,R是BCNF。 R是BCNF。R的候选码为X,而且F中每一个函数依赖的左部都包含了候选码X。 R是1NF。R的候选码为WX,则Y,Z为非主属性,又由于XZ,因此F中存在非主属性对候选码的部分函数依赖。,9.设有关系模式 R(职工名,项目名,工资,部门名,部门经理) 如果规定,每个职工可参加多个项目,各领一份工资;每个项目只属于一个部门管理;每个部门只有一个经理。 (1) 试写出关系模式R的基本FD和关键码。 (2) 说明

11、R不是2NF的理由,并把R分解成2NF模式集。 (3) 进而把R分解成3NF模式集,并说明理由。,10 设关系模式R(仓库编号,商品编号,库存量,商品名,规格)存储某商业集团的有关信息。如果规定: (1) 集团中有若干仓库,每个仓库中可放若干种商品; (2) 每一个商品编号表示一种商品:一种商品(由于生产厂家不同)可以有多个商品编号,但其规格只有一个。 (3) 每个仓库每存有一个编号的商品,有一个库存量。 试回答下列问题: (1) 据上述规定,写出模式R的基本FD; (2) 说明R不是2NF的理由,并把R分解成2NF模式集; (3) 进而再分解成3NF模式集。,11 设某汽车运输公司数据库中有一个关系模式: R(汽车牌照,司机编号,行驶公里,班组编号,班组长) 如果规定: (1) 每个汽车牌照对应一辆汽车。“行驶公里“为某司机驾驶某辆汽车行驶的总公里数。 (2) 每个司机属于一个班组;每个班组有一个班组长。 试回答下列问题: (1) 根据上述规定,写出模式R的基本FD; (2) 说明R不是2NF的理由,并把R分解成2NF模式集; (3) 进而再分解成3NF模式集。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号