《数据库课后答案5-7章》由会员分享,可在线阅读,更多相关《数据库课后答案5-7章(9页珍藏版)》请在金锄头文库上搜索。
1、15.1 名词解释: 1、函函数数依依赖赖:FD(FUNCTION DEPENDENCY),设有关系模式 R(U),X,Y 是 U 的子集,R是 R 的任一具 体关系,如果对R的任意两个元组T1,T2,由T1X=T2X导致T1Y=T2Y,则称 X 函数决定 Y, 或 Y 函数依赖于 X,记为 XY。XY 为模式 R 的一个函数依赖。函函数数依依赖赖的的逻逻辑辑蕴蕴涵涵: 设 F 是关系模式 R 的一个函数依赖集, X,Y 是 R 的属性子集,如果从 F中的函数依赖能够推出 XY,则称 F 逻辑蕴涵 XY,记为 F|=XY。部部分分函函数数依依赖赖:即局部依赖,对于一个函数依赖 WA,如果存在
2、X W(X 包含于 W)有 XA 成立,那么称 WA 是局部依赖,否则称 WA 为完全依赖。完完全全函函数数依依赖赖:见上。 传传递递依依赖赖:在关系模式中,如果 YX,XA,且 X(表示不决定)Y,和 A X(A 不属于 X),那么 称 YA 是传递依赖。函数依赖集函数依赖集 F 的闭包的闭包 F+:被逻辑蕴涵的函数依赖的全体构成的集合,称为 F 的闭包(closure),记为 F+。1 1N NF F:第一范式。如果关系模式 R 的所有属性的值域中每一个值都是不可再分解的值 ,则称 R 是 属于第一范式模式。如果某个数据库模式都是第一范式的,则称该数据库存模式属于第一范式的 数据库模式。
3、第一范式的模式要求属性 值不可再分裂成更小部分,即属性项不能是属性组合和组属性组成。 2 2N NF F:第二范式。如果关系模式 R 为第一范式,并且 R 中每一个非主属性完全函数依赖于 R 的某 个候选键,则称是第二范式模式;如果某个数据库模式中每个关系模式都是第二范式的,则称该 数据库模式属于第二范式的数据库模式。 (注:如果 A 是关系模式 R 的候选键的一个属性,则称 A 是 R 的主属性,否则称 A 是 R 的非主属性。) 3 3N NF F:第三范式。如果关系模式 R 是第二范式,且每个非主属性都不传递依赖于 R 的候选键,则 称 R 是第三范式的模式。如果某个数据库模式中的每个关
4、系模式都是第三范式,则称为3NF 的 数据库模式。 BCNF:BC 范式。如果关系模式 R 是第一范式,且每个属性都不传递依赖于 R 的候选键,那么称 R 是 BCNF 的模式。 推推理理规规则则的的正正确确性性和和完完备备性性: 正确性是指,如果 XY 是从推理规则推出的,那么 XY 在 F+中。 完备性是指,不能从 F 使用推理规则导出的函数依赖不在 F+中。 依依赖赖集集的的覆覆盖盖和和等等价价: 关系模式 R(U)上的两个函数依赖集 F 和 G,如果满足 F+=G+,则称 F 和 G 是等价的。如果 F 和 G 等价,则可称 F 覆盖 G 或 G 覆盖 F。 最小依赖集:如果函数集合
5、F 满足以下三个条件: (1)F 中每个函数依赖的右部都是单属性; (2) F 中的任一函数依赖 XA,其 F-XA与 F 是不等价的;(3)F 中的任一函数依赖 XA,Z 为 X 的子集。(F-XAZA与 F 不等价。则称 F 为最小函数依赖集合,记为 FMIN。 无无损损联联接接:设 R 是一关系模式,分解成关系模式=R1,R2.,RK,F 是 R 上的一个函数依赖集。 如果对 R 中满足 F 的每一个关系R都有R=R1(R)|X|R2(R)|X|.|X|RK(R)则称这个分解相对 于 F 是“无损联接分解“。 保保持持依依赖赖集集: :所谓保持依赖就是指关系模式的函数依赖集在分解后仍在数
6、据库中保持不变,即关系 模式 R 到=R1,R2,.,RK的分解,使函数依赖集 F 被 F 这些 RI上的投影蕴涵。 多多值值依依赖赖:设 R(U)是属性集 U 上的一个关系模式, X,Y,Z 是 U 的子集,并且 Z=U-X-Y,用X,Y,Z分别代表属性集 X,Y,Z 的值,只要R是 R 的关系,R中存在元组(X,Y1,Z1)和(X,Y2,Z2)时,2就也存在元组(X,Y1,Z2)和(X,Y2,Z1),那么称多值依赖(MULTIVALUED DEPENDENCY MVD) XY 在关系 模式 R 中成立。5.2 关系模式 R 有N个属性,在模式 R 上可能成立的函数依赖有多少个 ?其中平凡的
7、函数依赖集 有多少个?非平凡的函数依赖有多少个 ? 答:在模式 R 上可能成立的函数依赖最多的个数即为 R 上函数依赖集的闭包中函数依赖的个数。5. 建立关于系、学生、班级、社团等信息的一个关系数据库,一个系有若干个专业,每个专业每 年只招一个班,每个班有若干个学生,一个系的学生住在同一宿舍区,每个学生可以参加若干个 社团,每个社团有若干学生。描述学生的属性有:学号、姓名、出生年月、系名、班级号、宿舍 区。 描述班级的属性有:班级号、专业名、系名、人数、入校年份。 描述系的属性有:系名、系号、系办公地点、人数。 描述社团的属性有:社团名、成立年份、地点、人数、学生参加某社团的年份。请给出关系模
8、式, 写出每个关系模式的最小函数依赖集,指出是否存在传递函数依赖,对于函数依赖左部是多属性 的情况,讨论函数依赖是完全函数依赖还是部分函数依赖。指出各关系的候选键、外部键,有没 有全键存在? 答:关系模式如下: 学生(学号,姓名,出生年月,系名,班级号,宿舍区) 班级(班级号,专业名,系名,人数,入校年份) 系(系名,系号,系办公地点,人数) 社团(社团名,成立年份,地点,人数,姓名,学生参加某社团的年份 )(这里加入一个“姓名“,否则 无法实现函数依赖) 用英文表示如下:STUDENT(SNO,SNAME,SBIRTH,DNAME,CNO,HOSTEL) CLASS(CNO,SUBNAME,
9、DNAME,CNUM,CYEAR) DEPARTMENT(DNAME,DNO,DADD,DNUM) LEAGUE(LNAME,LYEAR,LADD,LNUM,SNAME,SYEAR) 每个关系模式的最小函数依赖集: STUDENT的最小函数依赖集为: FMIN=SNOSNAME,SNOSBIRTH,SNOCNO,SNODNAME,DNAMEHOSTEL CLASS的最小函数依赖集为: FMIN=(DNAME,SUBNAME)CNO,CNOCNUM,CNOCYEAR DEPARTMENT的最小函数依赖集为: FMIN=DNODNAME,DNODADD,DNODNUM) LEAGUE的最小函数依赖
10、集为: FMIN=LNAMELYEAR,LNAMELADD,LNAMELNUM,SNAMESYEAR) 以上关系模式中存在传递函数依赖如 :SNODNAME,DNAMEHOSTEL,对于函数依赖左部是多属性的 情况,函数依赖是完全函数依赖 (假设系中专业名可以相同 )各关系的候选键、外部键如下: STUDENT:候选键是 SNO,外部键是 SNAME,DNAME,CNO。 CLASS:候选键是 CNO,外部键是 DNAME. DEPARTMENT:候选键是 DNO,外部键是 DNAME。 LEAGUE:候选键是 LNAME,外部键是 SNAME。35.3 对函数依赖 XY 的定义加以扩充,X
11、和 Y 可以为空属性集,用表示,那么 X,Y,的含义是什么? 答:根据函数依赖的定义,以上三个表达式的含义为: (1)一个关系模式 R(U)中,X,Y 是 U 的子集,R是 R 的任一具体关系,如果对R的任意两个元组T1,T2,由T1X=T2X必有T1=T2,即 X 函数决定空属性。即 X表示空属性函数依赖 于 X。这也是任何关系中都存在的。 (2)Y 表示 Y 函数依赖于空属性。由此可知该关系中所有元组均相同。 (3)表示空属性函数依赖于空属性。这是显然的。 试分析下列分解是否具有无损联接和保持函数依赖的特点: (1)设 R(ABC),F1=AB 在 R 上成立,1=AB,AC。 答:根据课
12、本 113 页无损联接的测试算法: 第一步:构造表:AB CABA1A2B13ACA1B22A3第二步,根据 AB 进行处理:AB CABA1A2B13ACA1A2A3结果第二行全是A行,因此分解是无损联接分解。 (2)设 R(ABC),F2=AC,BC在 R 上成立,2=AB,AC 解,用相同的算法,可得是无损联接分解。 (3)设 R(ABC),F3=AB,在 R 上成立,3=AB,BC. 解:第一步:构造表:AB CABA1A2B13BCB21A2A3第二步,根据 AB 进行处理,发现没有 A 分量相等的,所以不再修改。因此这个分解是不具有 无损联接特性的。 (4)设 R(ABC),F4=
13、AB,BC在 R 上成立,4=AC,BC 解:第一步构造表:AB CACA1B12A3BCB21A2A3根据 AB,表中无可修改部分,根据 BC,表中亦无可修改部分。所以这个分解也是不具有无 损联接特性的。 5.14 设 R=ABCD,R 上的函数依赖集 F=AB,BC,AD,DC,R 的一个分解=AB,AC,AD, 求:(1)F 在的每个模式上的投影。 (2)相对于 F 是无损联接分解吗?(3)保持依赖吗?4解:(1)AB(F)=AB,及按自反律所推导出的一些平凡函数依赖 AC(F)=AC,及按自反律所推导出的一些平凡函数依赖 AD(F)=AD,及按自反律所推导出的一些平凡函数依赖 (2)相
14、对于 F 是无损联接分解(解法如下题)。 (3)AB(F)AC(F)AD(F)=AB,AC,AD,没有满足 BC,DC 函数依赖,因此 相对于 F 的这个分解不保持依赖。 5.15 设 R=ABCD,R 上的 F=AC,DC,BDA,试证明=AB,ACD,BCD相对于 F 不是无损联接 分解。 证明:(本题用到教材P114 页定理 5.4:如果 R 的分解为=R1,R2,F 为 R 所满足的函数依赖集 合,分解具有无损联接性的充分必要条件是: R1R2(R1-R2)或 R1R2(R2-R1)本题的证 明如下: 先设 R 被分解为=R1(ABCD),R2(BCD)R1R2:ABCDBCD=BCD
15、 R1-R2:ABCD-BCD=A 因为 BCDA 可由 BDA 得出,因此满足无损联接的分解。 第二步,将 R1 分解为R3(AB),R4(ACD)R3R4: ABACD=A R3-R4 : AB-ACD=B R4-R3 : ACD-AB=CD 此时,AB,ACD(可分解为 AC,AD)不在 F 中,也不在 F+中,所以总的来说, R 上相对于 F 的分解不是无损联接分解。 设 R=ABCD,R 上的 F=AB,BC,DB,把 R 分解成 BCNF 模式集。(1)若首先把 R 分解成 ACD,BD,试求 F 在这两个模式上的投影。 (2)ACD 和 BD 是 BCNF 吗?如果不是,请进一步分解。 解:(1)ACD(F)=ACBD(F)=DB (2)ACD 不是 BCNF,因为根据 BCNF 的定义,关系模式是第一范式, A 为候选键,但 D 不由 A 决定, 所以它不是 BCNF 模式。它可进一步分解为: AC,DC,此时 AC,DC 均为 BCNF 模式。 BD 是 BCNF,因为 R2(BC)是第一范式,且每个属性都不传递依赖于 D(候选键),所以它是 BCNF 模式。 设 R=ABCD,=AB,BC,CD。F1=AB,BC;F2=BC,CD;(1)如果 F