數(shù)據(jù)庫表結(jié)構(gòu)設(shè)計(jì)之三大范式(Normal Form)
在設(shè)計(jì)數(shù)據(jù)庫的表結(jié)構(gòu)時宏邮,一般要遵循三大范式造锅。何為范式寺酪,就是數(shù)據(jù)庫設(shè)計(jì)的某一種級別的關(guān)系模式梅尤,范式能降低數(shù)據(jù)的冗余和減少維護(hù)與數(shù)據(jù)變動時產(chǎn)生的異常,后者的根本原因是數(shù)據(jù)的冗余引起的
- 第一范式(1NF)——表中字段不可分
表中字段不可分赔硫,也就是字段屬性是不能再分解成二個及以上的屬性炒俱,其實(shí),在任何一個關(guān)系數(shù)據(jù)庫中爪膊,第一范式(1NF)是對關(guān)系模式的基本要求权悟,不滿足第一范式(1NF)的數(shù)據(jù)庫就不是關(guān)系數(shù)據(jù)庫。
- 第二范式(2NF)——非主鍵字段依賴主鍵中的全部字段(對于關(guān)聯(lián)主鍵來說)
要滿足第二范式推盛,首先必須滿足第一范式峦阁。另外,第二范式只是對于關(guān)聯(lián)主鍵來說的耘成,單一字段構(gòu)成的主鍵必然是滿足第二范式的榔昔。當(dāng)主鍵為關(guān)聯(lián)主鍵時,非主鍵字段必須依賴主鍵中所有的字段瘪菌,不能只依賴于其中一部分或者干脆全部不依賴撒会,這樣是不滿足第二范式要求的。
- 第三范式(3NF)——非主鍵字段不傳遞依賴于主鍵
要滿足第三范式师妙,首先必須滿足第二范式诵肛。所謂的傳遞依賴,也就是有一字段C(非主鍵字段)有如下的依賴關(guān)系:
A(主鍵字段)->B(非主鍵字段)-->C
其實(shí)也就是非主鍵字段之間沒有依賴關(guān)系默穴,只與主鍵字段有依賴關(guān)系
【附加知識】三大鍵:超鍵怔檩、候選鍵與主鍵
詳細(xì)說明請點(diǎn)擊鏈接:http://blog.csdn.net/cjr15233661143/article/details/12970323