0401303 2013211495 第4次作业

来源:互联网 发布:淘宝 手机 假货 编辑:程序博客网 时间:2024/05/01 09:13

2、关系模式:

     学生(学号,姓名,出生日期,系名,班号,宿舍区);

     班级(班号,专业名,系名,人数,入校年份);

     系(系名,系号,系办公室地点,人数);

     学会(学会名,成立年份,地点,人数);

     学生-学会(学号,学会名,入会年份)。

     (1)学生(学号,姓名,出生日期,系名,班号,宿舍区):

            最小函数依赖集:

            学号——>姓名,学号——>系名,学号——>出生日期,学号——>班  号,系名——>宿舍。

            传递依赖:

            学号——>宿舍。

            候选码:学号。外码:班号,系名。

     (2)班级(班号,专业名,系名,人数,入校年份):

            最小函数依赖集:班号——>专业名,班号——>人数,班号——>入校年份,专业名——>系名。

            传递依赖:班号——>系名。

            候选码:班号。

            外码:系名。

      (3)系(系名,系号,系办公室地点,人数):

             最小函数依赖集:系号——>系名,系名——>系号,系号——>系办公室地点,系号——>人数。

             无传递依赖。

             候选码:系名。

             外码:无。

      (4)学会(学会名,成立年份,地点,人数):

            最小函数依赖集:学会名——>成立年份,学会名——>地点,学会名——>人数。

             无传递依赖。候选码:学会名。无外码。

       (5)学生-学会(学号,学会名,入会年份):

            最小函数依赖集:(学号,学会名)——>入会年份。

            无传递依赖,是完全函数依赖。候选码:(学号,学会名)外码:学号,学会名。

3、(1)R的候选码为BD。(BD)3 = BDAC。

     (2)将F中的函数依赖都分解为右部为单属性的函数依赖.
              F={A→C,C→A,B→A,B→C,D→A,D→C,BD→A}
             去掉F中冗余的函数依赖.
              判断A→C是否冗余.
             设:G1={C→A,B→A,B→C,D→A,D→C,BD→A},得(A)G1+=A
              ∵C不属于(A)G1+   ∴ A→C不冗余
             判断C→A是否冗余.
            设:G2={A→C,B→A,B→C,D→A,D→C,BD→A},得(A)G2+=C
             ∵A不属于(C)G2+   ∴ C→A不冗余
             判断B→A是否冗余.
            设:G3={A→C,C→A,B→C,D→A,D→C,BD→A},得(B)G3+=BCA
            ∵A属于(B)G3+   ∴ B→A冗余
            判断B→C是否冗余.
            设:G4={A→C,C→A,D→A,D→C,BD→A},得(B)G4+=B
             ∵C不属于(B)G4+   ∴ B→C不冗余
            判断D→A是否冗余.
            设:G5={A→C,C→A,B→C,D→C,BD→A},得(D)G5+=DCA
             ∵A不属于(D)G5+   ∴ D→A冗余
              判断A→C是否冗余.
            设:G6={A→C,C→A,B→C,BD→A},得(D)G6+=D
            ∵C不属于(D)G6+   ∴ D→C不冗余
            判断BD→A是否冗余.
            设:G7={A→C,C→A,B→C,D→C},得(BD)G7+=BDCA
            ∵A不属于(BD)G7+   ∴ BD→A冗余

            综上所述:Fm={A→C,C→A,B→C,D→C}

         (3)τ={AC,BC,DC,BD}。

5、将函数依赖集F分解为右边为单属性的函数依赖:

          F={AB→E,BC→D,BE→C,CD→B,CE→A,CE→F,CF→B,CF→D,C→A,D→E,D→F}。

          去掉F中冗余的函数依赖.
              判断AB→E是否冗余.
             设:G1={BC→D,BE→C,CD→B,CE→A,CE→F,CF→B,CF→D,C→A,D→E,D→F},得(AB)G1+=AB
              ∵E不属于(AB)G1+   ∴ AB→E不冗余
             判断BC→D是否冗余.
            设:G2={AB→E,BE→C,CD→B,CE→A,CE→F,CF→B,CF→D,C→A,D→E,D→F},得(BC)G2+=BCA
             ∵D不属于(BC)G2+   ∴ BC→D不冗余
             判断BE→C是否冗余.
            设:G3={AB→E,BC→D,CD→B,CE→A,CE→F,CF→B,CF→D,C→A,D→E,D→F},得(BE)G3+=BE
            ∵C不属于(BE)G3+   ∴ BE→C不冗余
            判断CD→B是否冗余.
            设:G4={AB→E,BC→D,BE→C,CE→A,CE→F,CF→B,CF→D,C→A,D→E,D→F},得(CD)G4+=CDAEFB
             ∵B属于(CD)G4+   ∴ CD→B冗余
            判断CE→A是否冗余.
            设:G5={AB→E,BC→D,BE→C,CD→B,CE→F,CF→B,CF→D,C→A,D→E,D→F},得(CE)G5+=CEFABD
             ∵A属于(CE)G5+      ∴ CE→A冗余
              判断CE→F是否冗余.
            设:G6={AB→E,BC→D,BE→C,CD→B,CE→A,CF→B,CF→D,C→A,D→E,D→F},得(CE)G6+=CEA
            ∵F不属于(D)G6+      ∴ CE→F不冗余
            判断CF→B是否冗余.
            设:G7={AB→E,BC→D,BE→C,CD→B,CE→A,CE→F,CF→D,C→A,D→E,D→F},得(CF)G7+=CFDABE
            ∵B属于(CF)G7+   ∴ CF→B冗余

            判断CF→D是否冗余.
            设:G7={AB→E,BC→D,BE→C,CD→B,CE→A,CE→F,CF→B,C→A,D→E,D→F},得(CF)G7+=CFDABE
            ∵D属于(CF)G7+   ∴ CF→D冗余
            判断C→A是否冗余.
            设:G7={AB→E,BC→D,BE→C,CD→B,CE→A,CE→F,CF→B,CF→D,D→E,D→F},得(C)G7+=C
            ∵A不属于(C)G7+   ∴ C→A不冗余

            判断D→E是否冗余.
            设:G7={AB→E,BC→D,BE→C,CD→B,CE→A,CE→F,CF→B,CF→D,C→A,D→F},得(D)G7+=DF
            ∵E不属于(D)G7+   ∴ D→E不冗余

           判断D→F是否冗余.
            设:G7={AB→E,BC→D,BE→C,CD→B,CE→A,CE→F,CF→B,CF→D,C→A,D→E},得(D)G7+=DF
            ∵F属于(D)G7+   ∴ D→F冗余

            Fm={AB→E,BC→D,BE→C,CE→F,C→A,D→E}。

8、(1)关系中l类(只出现在左边)L=(IB)
              关系中R类(只出现在右边)R=(DQ)
              关系中LR类(两边都有)LR=(S)
              关系中NLR类(两边都没有)NLR=(O)
              NLR类O一定是侯选码的一部分。
              (IB)的属性闭包为LBDQS
              所以R的侯选码为IBO

     (2) Fm={S→D,I→S,IS→Q,B→Q}

           S→D不满足BCNF范式,把R分解为R11(SD),R12(BOISQ),F11(S→D),F12(I→S,IS→Q,B→Q);

          IS→Q不满足BCNF范式,继续分解,R11(SD),R12(ISQ),R13(BOQ),F11(S→D),F12(I→S,IS→Q),F13(B→Q)。

            则{R11,R12,R13}为最后结果。




0 0
原创粉丝点击