画江湖之灵主隐藏:设关系模式R{B,O,S,Q,D}, 函数依赖集F={S→D,I→S,IS→Q,B→Q}找出R的主码,把R分解为BCNF

来源:百度文库 编辑:高校问答 时间:2024/04/30 01:14:20
并且具有无损连接性和函数依赖保持性

太难!

R={U,F} U=(BOISQD) F={s-d,i-s,is-q,b-q}
关系中l类(只出现在左边)L=(IB)
关系中R类(只出现在右边)R=(DQ)
关系中LR类(两边都有)LR=(S)
关系中NLR类(两边都没有)NLR=(O)
NLR类O一定是侯选码的一部分。
(IB)的属性闭包为(IBDQS)=U-NLR
所以R的侯选码为IBO
F的最小函数依赖集为={s-d,i-s,is-q,b-q}
S-D不满足BCNF把R分解为:
R0{(BOISQ) {I-S,is-Q,B-Q}
R1{(SD) {S-D}}
is-q不满足BCNF继续分解:
R0{(BOIS) {i-s}}
R1{(SD) {S-D}}
R2{(ibq) {i-q,b-Q}}
{R0(BOIS),R1(SD),R2(IBQ)}为BCNF
检查
B O I S Q D
BOIS a1 a2 a3 a4 b15 b16
SD b22 b23 b24 a4 b25 a6
IBQ a1 b32 a3 b34 a5 b36
根据i-s
B O I S Q D
BOIS a1 a2 a3 a4 b15 b16
SD b22 b23 b24 a4 b25 a6
IBQ a1 b32 a3 a4 a5 b36
根据s-d
B O I S Q D
BOIS a1 a2 a3 a4 b15 a6
SD b22 b23 b24 a4 b25 a6
IBQ a1 b32 a3 a4 a5 a6
根据ib-q
B O I S Q D
BOIS a1 a2 a3 a4 a5 a6
SD b22 b23 b24 a4 b25 a6
IBQ a1 b32 a3 a4 a5 a6
第一行全为A所以{R0,R1,R2}为R的无损分解。