数据库系统概论第4章补充练习答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

•补充习题

• 1. 设关系模式

R=(U,F),U=ABCDEG,F={AB→D,DB→EG,AC→E,BE→A, A→B },求所有候选码。(AC,BCE,BCD)

• 2. 设关系模式R=(U,F),U=ABCDEG,求下列函数依赖集F等价的最小函数依赖集Fmin.

•(1)F={AB→CD,A→BE,D→E,B→D}

1.F1={AB->C,AB->D,A->B,A->E,D->E,B->D}

2.F2={AB->C,A->B, D->E,B->D}

3.Fmin={A->C,A->B,D->E,B->D}

•(2)F={ABC→D, AC→E, E→AB,B→D,CD→B}

1.F1={ABC→D, AC→E, E→A, E→B,B→D,CD→B}

2.F2={AC→E, E→A, E→B,B→D,CD→B}

3.Fmin={AC→E, E→A, E→B,B→D,CD→B}

•(3)

F={AB→C,D→EG,C→A,BE→C,BC→D,CG→BD,ACD→B,C E→AG}

1.F1={AB→C,D→E,D->G,C→A,BE→C,BC→D,

CG→B, CG→D,ACD→B,CE→A, CE→G}

2.F2={AB→C,D→E,D->G,C→A,BE→C,

BC→D,CG->D,ACD→B, CE→G}

或者F2={AB→C,D→E,D->G,C→A,BE→C,

BC→D,CG->B,CE→G}

3. {AB→C,D→E,D->G,C→A,BE→C,BC→D,

CG->D,CD→B, CE→G}或者

{AB→C,D→E,D->G,C→A,BE→C,BC→D,

CG->B,CD→B, CE→G}

• 3.判断并证明下列关系模式最高属于哪一级范式•(1)R1:U=ABCD, F={AB→C,C→D }( AB,2 )•(2)R2:U=ABCD, F={AB→C,D→A, D→B }(D,2)•(3)R3:U=ABCD, F={A→B,B→C,

CD→A }(BD,CD,AD,3)

•(4)R4:U=ABCD, F={ A→B,B→C }(AD,1)•(5)R2:U=ABCDE, F={AB→C, BC→D, AB→E, ABCD→DE, BED→BE}(AB,2)

• 4. 把下列关系模式分解为无损连接和保持函数依赖的3NF:

•(1)U=ABCD, F={AB→CD,D→C, CD→B}

1.Fmin={AB->D,D->C,D->B},码AD,AB

2.分组U1=ABD,

根据算法 后面合并成 U2=BCD

3.吸收,得U1,U2

4. ADB中包含了码

F1={ABD,AB->D,D->B}F2={BCD,D->B,D->C}

•(2)U=ABCDEG, F={ B→CD,DE→A, E→C, C→A, BD→AC }

1. Fmin={B->C,B→D, E→C, C→A}

2.分组U1=BCD,U2=EC U3=CA,U0=G

3.吸收,得U2,U3,U4

4.检查码

F2={EC,E->C}F3={CA,C->A}F4={BCD,B->D,B->D},

F4=(BEG. ф)

• 5. 把下列关系模式分解为无损连接的BCNF: U=ABCD, F={A→C,B→AC, D→AC, BD→A}

1.Fmin={A→C,B→A, D→A}

2.码 BD,A->C不符合

R1={AC,A->C} R2=(ABD,B->A,D->A)

B->A不符合

R3={AB,B->A} R4={BD, ф}

得到R1,R3,R4

•算法4b.3(求最小函数依赖集的算法)

•1)求最简式:对F中所有右边为多属性形如X→ A1A2…A n的函数依赖用X→Ai,i=1,2, …,n来代替,得到函数依赖集F1,F1全由最简式组成。

•2)消除冗余函数依赖:对所有(X→A)∈F1逐个做①令G= F1-(X→A);②对G求X+;③若A∈X+,则从F1中去掉X→A,否则不

去掉;最终得到没有冗余函数依赖的函数依赖集F2。

•3左边最简化:对F2中所有左边为多属性的形如X(= A1A2…A n)→A的函数依赖,①i=1; ②若i>n则结束本函数依赖的处理,转入对F2中下一个这样的函数依赖的处理;否则X-=X-A i;③若X-为空,则结束本函数依赖的处理,转入对F2中下一个这样的函数依赖的处理;否则,对F2求X-+;④若A∈X-+,则F2= F2-(X→A)∪(X-→A),X=X-,i=i+1,转②;否则,i=i+1,转②。

•所有这样的函数依赖处理完成后,F2的函数依赖左边都最简化。•最终得到的F2是一个最小函数依赖集F min 。

•例4b.4 设F={ AB→C,D→EG, C→A,BE→C,BC→D, CG→BD,ACD→B,CE→AG},求其Fmin。

•解:

•(1)求最简式

• F1=

{AB→C,D→E,D→G,C→A,BE→C,BC→D,CG→B,CG→D,ACD→B,C E→A,CE→G}

•(2)除冗余函数依赖

•G=F1-(AB→C),对G的(AB)+={AB},C!∈(AB)+,所以AB→C不能去掉;

•同理 D→E,D→G,C→A,BE→C,BC→D, CG→D,ACD→B, CE→G都不能去掉;

•G=F1-(CG→B),对G的(CG)+={CGDAB},B∈(CG)+,所以CG→B 要去掉;同理,CE→A 可去掉;

•所以,F2={AB→C,D→E,D→G,C→A,BE→C,BC→D,

CG→D,ACD→B, CE→G}

相关文档
最新文档