例题
设关系模式R(U,F),其中:U={A,B,C,D,E},F={a}
设关系模式R(U,F),其中:U={A,B,C,D,E},F={A→B,DE→B,CB→E,E→A,B→D}。( )为关系模式R的候选关键字。分解( )是无损连接,并保持函数依赖的。
(1)A.AB
B.DE
C.DB
D.CE
(2)A.ρ={ R1(AC),R2(ED),R3(B)}
B.ρ={ R1(AC),R2(E),R3(DB)}
C.ρ={ R1(AC),R2(ED),R3(AB)}
D.ρ={ R1(ABC),R2(ED),R3(ACE)}
答案:D、D
解:
2.构造二维表判断“无损连接”
如果有一行是满的,即关系模式的分解具有无损连接性,反之是有损连接分解
A.ρ={ R1(AC),R2(ED),R3(B)}
有值填入,没有空着
A | B | C | D | E | |
AC | 11 | 13 | |||
ED | 24 | 25 | |||
B | 32 |
看函数依赖F={A→B,DE→B,CB→E,E→A,B→D}。
A→B,看A,AC有,填上12
DE→B,看DE,ED有,填上22
CB→E,看CB,没有
E→A,看E,ED有,填上21
B→D,看B,B有,填上34
A | B | C | D | E | |
AC | 11 | 12 | 13 | ||
ED | 21 | 22 | 24 | 25 | |
B | 32 | 34 |
都不满,ρ={ R1(AC),R2(ED),R3(B)}是有损连接。
B.ρ={ R1(AC),R2(E),R3(DB)}
看函数依赖F={A→B,DE→B,CB→E,E→A,B→D}。
A→B,看A,AC有,填上12
DE→B,看DE,ED有,填上22
CB→E,看CB,没有
E→A,看E,E有,填上21
B→D,看B,DB有,DB都有,不用填
A | B | C | D | E | |
AC | 11 | 12 | 13 | ||
E | 21 | 22 | 25 | ||
DB | 32 | 34 |
都不满,是有损连接。
C.ρ={ R1(AC),R2(ED),R3(AB)}
A | B | C | D | E | |
AC | 11 | 12 | 13 | ||
ED | 21 | 22 | 24 | 25 | |
AB | 31 | 32 | 34 |
看函数依赖F={A→B,DE→B,CB→E,E→A,B→D}。
A→B,看A,AC有,填上12;看A,AB有A,AB都有数字,不用填
DE→B,看DE,ED有,填上22
CB→E,看CB,没有
E→A,看E,ED有,填上21
B→D,看B,AB有,填上34
都不满,是有损连接。
D.ρ={ R1(ABC),R2(ED),R3(ACE)}
A | B | C | D | E | |
ABC | 11 | 12 | 13 | 14 | 15 |
ED | 21 | 22 | 24 | 25 | |
ACE | 31 | 32 | 33 | 35 |
看函数依赖F={A→B,DE→B,CB→E,E→A,B→D}。
A→B,看A,ABC有,B有,不用填;看A,ACE有A,填上32;
DE→B,看DE,ED有,填上22;
CB→E,看CB,ABC有,填上15;
E→A,看E,ED有,填上21;看E,ACE有,A有,不用填
B→D,看B,ABC有,填上14;
ABC一行满,是无损连接。