zhyiwww
          用平實的筆,記錄編程路上的點點滴滴………
          posts - 536,comments - 394,trackbacks - 0

          ?

          ?

          第一范式:

          所有的屬性都是不可分割的原子單位。

          第二范式:

          如果關系模式R(U,F)中的所有非主屬性都完全依賴于任意一個候選關鍵字,則稱關系R 是屬于第二范式。

          第三范式:

          如果關系模式R(U,F)中的所有非主屬性對任何候選關鍵字都不存在傳遞信賴,則稱關系R是屬于第三范式的

          BC范式:(BCNF)

          如果關系模式R(U,F)的所有屬性(包括主屬性和非主屬性)都不傳遞依賴于R的任何候選關鍵字,那么稱關系R是屬于BCNF的。

          舉例說明:

          第一范式(1NF):

          如果關系模式R的每個關系都是r的屬性值不可分割的原子值,則稱關系R是第一范式的模式.

            不滿足第一范式的情況:
            關系R(name,address,phone)
            ----------------------------------------------------------------------
            name address phone

          AA 山西太原 2204446
             AA 山西太原 8350524
            ----------------------------------------------------------------------
          說明:phone可以再分(可以分為phone1和phone2).

          *************************************************************************************

          第二范式(2NF):

          1):局部依賴:
            對于依賴關系 W->A (A依賴于W),如果存在X歸屬于W,且X->A(A依賴于X),那么稱W->A是局部依賴;否則稱W->A是完全依賴.
            比如:
            關系模式R(sno,cno,grade,tname,taddr)
            sno:學生學號;cno:課程編號;grade:成績;tname:老師姓名;taddr:老師住址
            (sno,cno)->(tname,taddr)(sno,cno決定于tname以及cno)是局部依賴,因為cno->(tname,taddr).

          2):二范式定義:
            如果關系模式R滿足第一范式,且每個非主屬性完全依賴于侯選鍵,則稱R滿足第二范式.

          不滿足第二范式的情況:
            關系模式R(sno,cno,grade,tname,taddr)
            sno:學生學號;cno:課程編號;grade:成績;tname:老師姓名;taddr:老師住址
            ----------------------------------------------------------------------
            sno cno grade tname taddr

            101 001 100 張老師 山西太原....
            102 001 95 張老師 山西太原....
            103 001 98 張老師 山西太原....
            104 002 95 李老師 中國北京....
            105 003 90 劉老師 中國上海....
            ----------------------------------------------------------------------
            說明:出現相同的tname,taddr三次
            消除方法:分解關系模式R
            ----------------------------------------------------------------------
            R1(sno,cno,grade)

            sno cno grade

            101 001 100
            102 001 95
            103 001 98
            104 002 95
            105 003 90


            R2(cno,tname,taddr)

            cno tname taddr

            001 張老師 山西太原....
            002 李老師 中國北京....
            003 劉老師 中國上海....
            ----------------------------------------------------------------------

          *************************************************************************************

          第三范式(3NF):

          1):傳遞依賴:如果X->Y,Y->A,且Y不依賴X和A不是Y的子集,那么稱X->A是傳遞依賴.(A傳遞依賴于X)

          2):三范式定義:
            如果關系模式R是1NF,且每個非主屬性都不依賴于R的侯選鍵,那么稱R滿足第三范式.

          不滿足第三范式的情況:
            關系模式R2(cno,tname,taddr)是2NF模式,如果在R2中存在cno->tname,tname->taddr,那么cno->taddr就是個傳遞依賴,及不滿足第三范式.
            ----------------------------------------------------------------------
            cno tname taddr

            001 張老師 山西太原....
            002 李老師 中國北京....
            003 劉老師 中國上海....
            004 張老師 山西太原....
            005 張老師 山西太原....
            ----------------------------------------------------------------------
            說明:張老師開設了3門課程,上面就出現了3個元組,教師地址重復了3次.
            消除方法:分解關系模式R2
            ----------------------------------------------------------------------
            R3(cno,tname)

            cno tname

            001 張老師
            002 李老師
            003 劉老師
            004 張老師
            005 張老師

            R4(tname,taddr)

            tname taddr

            張老師 山西太原....
            李老師 中國北京....
            劉老師 中國上海....
            ----------------------------------------------------------------------

          再補充一下:

          第四范式(4NF)

          第四范式禁止主鍵列和非主鍵列一對多關系不受約束

          第五范式(5NF)

          第五范式將表分割成盡可能小的塊,為了排除在表中所有的冗余.



          |----------------------------------------------------------------------------------------|
                                     版權聲明  版權所有 @zhyiwww
                      引用請注明來源 http://www.aygfsteel.com/zhyiwww   
          |----------------------------------------------------------------------------------------|
          posted on 2006-06-13 14:12 zhyiwww 閱讀(761) 評論(1)  編輯  收藏 所屬分類: database

          FeedBack:
          # re: 簡單談談關系數據庫中范式理論(轉載)
          2006-11-01 11:10 | merry
          BC范式呢?如何從BC范式的定義(莎師宣、王珊編的教材)推出一定滿足第三范式?  回復  更多評論
            
          主站蜘蛛池模板: 灵丘县| 刚察县| 如皋市| 麻栗坡县| 察哈| 托克托县| 长治县| 东源县| 龙陵县| 桑日县| 洛扎县| 黄大仙区| 环江| 海盐县| 多伦县| 新沂市| 上杭县| 海南省| 九龙县| 桂东县| 任丘市| 龙胜| 南溪县| 武义县| 东台市| 昌吉市| 晋江市| 曲沃县| 淮阳县| 乐东| 达拉特旗| 巴东县| 华池县| 新建县| 肇庆市| 衡东县| 镇坪县| 丘北县| 米林县| 宜君县| 祥云县|