文章出處

三大范式并不是用來區別的,是關系型數據庫里的規范,是為了減少數據冗余。如果三個規范都滿足說明的你的數據庫比較健全,數據冗余少,后期維護也方便。用多了就知道了。如果一定要記下,記住定義就好。第一范式:確保每列的原子性.

如果每列(或者每個屬性)都是不可再分的最小數據單元(也稱為最小的原子單元),則滿足第一范式.

例如:顧客表(姓名、編號、地址、……)其中"地址"列還可以細分為國家、省、市、區等。

第二范式:在第一范式的基礎上更進一層,目標是確保表中的每列都和主鍵相關.

如果一個關系滿足第一范式,并且除了主鍵以外的其它列,都依賴于該主鍵,則滿足第二范式.

例如:訂單表(訂單編號、產品編號、定購日期、價格、……),"訂單編號"為主鍵,"產品編號"和主鍵列沒有直接的關系,即"產品編號"列不依賴于主鍵列,應刪除該列。

第三范式:在第二范式的基礎上更進一層,目標是確保每列都和主鍵列直接相關,而不是間接相關.

如果一個關系滿足第二范式,并且除了主鍵以外的其它列都不依賴于主鍵列,則滿足第三范式.

為了理解第三范式,需要根據Armstrong公里之一定義傳遞依賴。假設A、B和C是關系R的三個屬性,如果A-〉B且B-〉C,則從這些函數依賴中,可以得出A-〉C,如上所述,依賴A-〉C是傳遞依賴。

看文倉www.kanwencang.com網友整理上傳,為您提供最全的知識大全,期待您的分享,轉載請注明出處。
歡迎轉載:http://www.kanwencang.com/bangong/20170215/101831.html

文章列表




Avast logo

Avast 防毒軟體已檢查此封電子郵件的病毒。
www.avast.com


arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()