第1题:本题考查如何求解候选关键字和对模式分解知识的掌握。
给定一个关系模式R(U,F),U={A1,A2,...,An},F是R的函数依赖集,若
=U,则X必为R的唯一候选关键字。对于试题(7),A选项
=ABD≠U,所以AB非候选关键字;B选项
=ABDE≠U,所以DE非候选关键字;C选项
=ABCDE=U,所以CE为候选关键字;D选项
=BD≠U,所以DB非候选关键字。
根据无损连接的判定算法,对选项A构造初始的判定表如下:
由于A→B,DE→B,CB→E,E→A,B→D的决定因素中没有两行是相同的,因此选项A是有损连接的。
对选项B构造初始的判定表如下:

由于A→B,DE→B,CB→E, E→A, B→D的决定因素中没有两行是相同的,因此选项B是有损连接的。
对选项C构造初始的判定表如下:
由于A→B,属性A的第1行和第3行相同,可以将第1行b
12改为a
2;又由于B→D,属性B的第1行和第3行相同,而属性D第1行b
14和第3行b
34改为a
4,因此改为同一符号,即取行号值最小的b
14。修改后的判定表如下:
反复检查函数依赖集F,无法修改上表,所以选项C是有损连接的。
对选项D构造初始的判定表如下:
由于A→B,属性A的第1行和第3行相同,可以将第3行b
32改为a
2 ;E→A,属性E的第2行和第3行相同,可以将属性A第2行b
21改为a
l ;AC→E,属性E的第2行和第3行相同,可以将属性E第1行b
15改为a
5 ;B→D,属性B的第1行和第3行相同,属性D第1行b
14和第3行b
34没有一行为a
4,因此改为同一符号,即取行号值最小的b
14。修改后的判定表如下:
E→D,属性E的第1~3行相同,可以将属性D第1行b
14和第3行b
34改为a
4。修改后的判定表如下:
由于上表第一行全为a,故分解无损。
现在分析该分解是否保持函数依赖。若分解保持函数依赖,那么分解的子模式的函数依赖集

。F
R1=A→B, CB→A,F
R2=E→D(根据Armstrong公理,系统传递依赖,E→A, A→B, B→D,所以E→D),F
R3=E→A。可以求证F
+与(F
R1+F
R2+F
R3)
+等价,即F
+=(F
R1+F
R2+F
R3)
+=(A→B,CB→A,E→D,E→A)
+,所以该分解保持函数依赖。'''''
第2题: