关系数据库的模式设计习题及答案

上传人:cl****1 文档编号:486489897 上传时间:2022-12-26 格式:DOC 页数:12 大小:89.50KB
返回 下载 相关 举报
关系数据库的模式设计习题及答案_第1页
第1页 / 共12页
关系数据库的模式设计习题及答案_第2页
第2页 / 共12页
关系数据库的模式设计习题及答案_第3页
第3页 / 共12页
关系数据库的模式设计习题及答案_第4页
第4页 / 共12页
关系数据库的模式设计习题及答案_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《关系数据库的模式设计习题及答案》由会员分享,可在线阅读,更多相关《关系数据库的模式设计习题及答案(12页珍藏版)》请在金锄头文库上搜索。

1、-数据库原理之关系数据库的模式设计课后习题及答案4.1名词解释(1) 函数依赖:FD(function dependency),设有关系模式R(U),*,Y是U的子集, r是R的任一具体关系,如果对r的任意两个元组t1,t2,由t1*=t2*导致t1Y=t2Y, 则称*函数决定Y,或Y函数依赖于*,记为*Y。*Y为模式R的一个函数依赖。 (2) 函数依赖的逻辑蕴涵:设F是关系模式R的一个函数依赖集,*,Y是R的属性子集, 如果从F中的函数依赖能够推出*Y,则称F逻辑蕴涵*Y,记为F|=*Y。 (3) 局部函数依赖:即局部依赖,对于一个函数依赖WA,如果存在*W(*包含于W)有*A成立, 则称W

2、A是局部依赖,否则称WA为完全依赖。 (4)完全函数依赖:见上。 (5) 传递依赖:在关系模式中,如果Y*,*A,且*Y*不决定Y, A*A不属于*,则称YA是传递依赖。 (6) 函数依赖集F的闭包F+: 被逻辑蕴涵的函数依赖的全体构成的集合,称为F的闭包(closure),记为F+。 (7) 1NF:第一式。如果关系模式R的所有属性的值域中每一个值都是不可再分解的值, 则称R是属于第一式模式。如果*个数据库模式都是第一式的,则称该数据库存模式属于第一式的数据库模式。 第一式的模式要求属性值不可再分裂成更小局部,即属性项不能是属性组合和组属性组成。 (8) 2NF:第二式。如果关系模式R为第一

3、式,并且R中每一个非主属性完全函数依赖于R的*个候选键, 则称是第二式模式;如果*个数据库模式中每个关系模式都是第二式的,则称该数据库模式属于第二式的数据库模式。 (注:如果A是关系模式R的候选键的一个属性,则称A是R的主属性,否则称A是R的非主属性。) (9)3NF:第三式。如果关系模式R是第二式,且每个非主属性都不传递依赖于R的候选键, 则称R是第三式的模式。如果*个数据库模式中的每个关系模式都是第三式,则称为3NF的数据库模式。 (10)BF:BC式。如果关系模式R是第一式,且每个属性都不传递依赖于R的候选键,则称R是BF的模式。 (11) 4NF:第四式。设R是一个关系模式,D是R上的

4、多值依赖集合。如果D中成立非平凡多值依赖*Y时, *必是R的超键,则称R是第四式的模式。 (12)推理规则的正确性和完备性:正确性是指,如果*Y是从推理规则推出的,则*Y在F+中。 完备性是指,不能从F使用推理规则导出的函数依赖不在F+中。 (13)依赖集的覆盖和等价:关系模式R(U)上的两个函数依赖集F和G,如果满足F+=G+,则称F和G是等价的。 如果F和G等价,则可称F覆盖G或G覆盖F。 (14)最小依赖集:如果函数集合F满足以下三个条件:(1)F中每个函数依赖的右部都是单属性; (2)F中的任一函数依赖*A,其F-*A与F是不等价的;(3)F中的任一函数依赖*A,Z为*的子集,F-*A

5、ZA与F不等价。则称F为最小函数依赖集合,记为Fmin。 (15)无损联接:设R是一关系模式,分解成关系模式=R1,R2.,Rk,F是R上的一个函数依赖集。 如果对R中满足F的每一个关系r都有r=R1(r)R2(r).Rk(r)则称这个分解相对于F是无损联接分解。 (16)保持依赖集:所谓保持依赖就是指关系模式的函数依赖集在分解后仍在数据库中保持不变, 即关系模式R到=R1,R2,.,Rk的分解,使函数依赖集F被F这些Ri上的投影蕴涵。 (17)多值依赖:设R(U)是属性集U上的一个关系模式,*,Y,Z是U的子集,并且Z=U-*-Y, 用*,y,z分别代表属性集*,Y,Z的值,只要r是R的关系

6、,r中存在元组(*,y1,z1)和(*,y2,z2)时, 就也存在元组(*,y1,z2)和(*,y2,z1),则称多值依赖(MultiValued Dependency MVD) *Y在关系模式R中成立。 4.2 关系模式R有n个属性,在模式R上可能成立的函数依赖有多少个 其中平凡的函数依赖有多少个非平凡的函数依赖有多少个 (要考虑所有可能的情况,数学排列组合问题。对于数据库本身而言,此题没多大意义 所有属性相互依赖时,函数依赖最多。 平凡的函数依赖:对于函数依赖*Y,如果Y*,则称*Y是一个平凡的函数依赖。 4.3 建立关于系、学生、班级、社团等信息的一个关系数据库, 一个系有假设干个专业,

7、每个专业每年只招一个班,每个班有假设干个学生,一个系的学生住在同一宿舍区, 每个学生可以参加假设干个社团,每个社团有假设干学生。 描述学生的属性有:*、出生年月、系名、班级号、宿舍区。 描述班级的属性有:班级号、专业名、系名、人数、入校年份。 描述系的属性有:系名、系号、系办公地点、人数。 描述社团的属性有:社团名、成立年份、地点、人数、学生参加*社团的年份。 请给出关系模式,写出每个关系模式的最小函数依赖集,指出是否存在传递函数依赖, 对于函数依赖左部是多属性的情况,讨论函数依赖是完全函数依赖还是局部函数依赖。 指出各关系的候选键、外部键,有没有全键存在 各关系模式如下: 学生(*,出生年月

8、,系名,班级号,宿舍区) 班级(班级号,专业名,系名,人数,入校年份) 系(系名,系号,系办公地点,人数) 社团(社团名,成立年份,地点,人数 参加社团社团名,*,学生参加社团的年份 学生(*,出生年月,系名,班级号,宿舍区)学生关系的最小函数依赖集为: Fmin=*,*班级号,*出生年月,*系名,系名宿舍区 以上关系模式中存在传递函数依赖,如:*系名,系名宿舍区 候选键是*,外部键是班级号,系名。 notice: 在关系模式中,如果Y*,*A,且*Y*不决定Y, A不属于*,则称YA是传递依赖。 班级(班级号,专业名,系名,人数,入校年份) 班级关系的最小函数依赖集为: Fmin=(系名,专

9、业名)班级号,班级号人数,班级号入校年份,班级号系名,班级号专业名 (假设没有一样的系,不同系中专业名可以一样) 以上关系模式中不存在传递函数依赖。 (系名,专业名)班级号是完全函数依赖。 候选键是(系名,专业名),班级号,外部键是系名。 系(系名,系号,系办公地点,人数) 系关系的最小函数依赖集为: Fmin=系号系名,系名系办公地点,系名人数,系名系号 以上关系模式中不存在传递函数依赖 候选键是系名,系号 社团(社团名,成立年份,地点,人数 社团关系的最小函数依赖集为: Fmin=社团名成立年份,社团名地点,社团名人数) 以上关系模式中不存在传递函数依赖。 候选键是社团名 参加社团社团名,

10、*,学生参加社团的年份参加社团关系的最小函数依赖集为: Fmin=社团名,*学生参加社团的年份) 社团名,*学生参加社团的年份是完全函数依赖。以上关系模式中不存在传递函数依赖。 候选键是社团名,*。4.4 对函数依赖*Y的定义加以扩大,*和Y可以为空属性集,用表示, 则*,Y,的含义是什么 根据函数依赖的定义,以上三个表达式的含义为: (1)一个关系模式R(U)中,*,Y是U的子集,r是R的任一具体关系,如果对r的任意两个元组t1,t2, 由t1*=t2*必有t1=t2。即*表示空属性函数依赖于*。这是任何关系中都存在的。 (2)Y表示Y函数依赖于空属性。由此可知该关系中所有元组中Y属性的值均

11、一样。 (3)表示空属性函数依赖于空属性。这也是任何关系中都存在的。 4.5 关系模式R(ABC),F=AC,BC,求F+。 可以直接通过自反律、增广律、传递律加以推广: F+=,A,B,C,AC,BC,AB,ABA,ABB,ABC,ABBC,ABAB,ABABC,BC,BCC,BCB,BCBC,AC,ACC,ACA,ACAC,ABC,ABCA,ABCB,ABCC,ABCBC,ABCAB,ABCABC4.6 试分析以下分解是否具有无损联接和保持函数依赖的特点: (1)设R(ABC),F1=AB 在R上成立,1=AB,AC。 首先,检查是否具有无损联接特点: 第1种解法-算法4.2:ABCABa

12、1a2b13ACa1b22a3ABCa1a2b13a1a2a3(1) 构造表(2)根据AB进展处理结果第二行全是a行,因此分解是无损联接分解。 第2种解法:(定理4.8) 设 R1=AB,R2=AC R1R2=A R2- R1=B AB,该分解是无损联接分解。 然后,检查分解是否保持函数依赖 R1F1=AB,以及按自反率推出的一些函数依赖 R2F1=按自反率推出的一些函数依赖 F1被R1F1所蕴涵,所以该分解保持函数依赖。 (2)设R(ABC),F2=AC,BC在R上成立,2=AB,AC 首先,检查是否具有无损联接特点: 第1种解法略 第2种解法:(定理4.8) 设 R1=AB,R2=AC R

13、1R2=A R2- R1=C AC,该分解是无损联接分解。 然后,检查分解是否保持函数依赖 R1F2=按自反率推出的一些函数依赖 R2F2=AC,以及按自反率推出的一些函数依赖 F1中的BC没有被蕴涵,所以该分解没有保持函数依赖。 (3)设R(ABC),F3=AB,在R上成立,3=AB,BC. 首先,检查是否具有无损联接特点: 第1种解法: ABCABa1a2b13BCb21a2a3ABCa1a2a3a1b22a3(1) 构造表(2)根据AB进展处理没有一行全是a行。因此这个分解不具有无损联接特性。 第2种解法:(定理4.8) 设 R1=AB,R2=BC R1R2=B R2- R1=C,R1- R2=A BC,BA不在F3中 该分解不具有无损联接特性。然后,检查分解是否保持函数依赖 R1F3=AB,以及按自反率推出的一些函数依赖 R2F3=按自反率推出的一些函数依赖 F1被R1F3所蕴涵,所以该分解保持函数依赖。 (4)设R(ABC),F4=AB,BC在R上成立,4=AC,BC 首先,检查是否具有无损联接特点: 第1种解法略 第2种解法:(定理4.8) 设 R1=AC,R2=BC R1(AC)R2(BC)=C R2- R1=B,R1- R2=A CB,CA不在F4中该分解不具有无损联接特性。 然后,检查分解是否保持函数依赖 R1F2=按自反率推出的一些函数依赖 R2F2=

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

当前位置:首页 > 建筑/环境 > 施工组织

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