日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

数据库范式介绍

發(fā)布時間:2025/3/20 数据库 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 数据库范式介绍 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

寫給自己復(fù)習(xí)的..


第一范式

所謂第一范式就是不允許出現(xiàn)重復(fù)組. 所謂重復(fù)組就是一列中有多個數(shù)據(jù).. 第一范式是關(guān)系數(shù)據(jù)庫的標(biāo)志, 如果第一范式不滿足, 就不是關(guān)系數(shù)據(jù)庫表.


1. 避免重復(fù)列.

例如:

學(xué)生?????? 科目

Jason??? 語文, 數(shù)學(xué)

Peter???? 英語


我們應(yīng)該增加一個數(shù)據(jù)行確保列種每個值都是單一值.

學(xué)生?????? 科目

Jason??? 語文

Jason? 數(shù)學(xué)

Peter???? 英語


第二范式

第二范式有點難度了:

1. 第二范式的前提是符合第一范式

2. 表中每個數(shù)據(jù)行都可以必須唯一標(biāo)識(primary key).

3. 數(shù)據(jù)表中的所有非主鍵列必須完全依賴于主鍵


1, 2點都很容易理解.

關(guān)鍵是怎么理解那個完全依賴于了.


下面舉例:

學(xué)生?????? 科目??? 總課時??? 考試得分

Jason??? 語文?? 80??????????? 67

Jason?? 英語 ? 70???????????? 82

Hebe ? ? 語文?? 80????????? ? 80

Peter???? 英語?? 70??????????? 91


上面那個表數(shù)據(jù)很常見吧,?? 可以看出上面的表的primary key 是1個組合鍵(學(xué)生,科目)

而考試得分這個列是完全依賴于這個組合鍵的.? 即是單單憑學(xué)生或者單單憑科目是決定不了考試得分的值的.


但是總課時至于組合鍵中的科目有關(guān),? 與學(xué)生并沒有依賴關(guān)系, 所以不是完全依賴于主鍵, 只是依賴于主鍵中的1個列.

所以上面那張表不符合第二范式.]


如果要讓它符合第二范式, 可以把 總課時這個列移除到另1個表中.

學(xué)生?????? 科目???? 考試得分

Jason??? 語文???????????? 67

Jason?? 英語 ??????????? 82

Hebe ? ? 語文???????? ? 80

Peter???? 英語??????????? 91



科目,? 總課時

語文?? 80

英語? 70



那么上面的兩張表就符合第二范式了.



第三范式

其實第三范式相對來講更加容易理解.

1. 第三范式必須符合第二范式

2. 所有非主鍵的屬性之間沒有依賴關(guān)系.



舉例:

產(chǎn)品id??? 價格???? 制造商??? 制造商地址

1???????????? 300 ????????? A???????????? addr_a

2??????????? 280 ?????????? B???????????? addr_b


上面的表主鍵是產(chǎn)品id.? 非主鍵的價格 和 制造商沒有依賴關(guān)系,? 但是制造商地址依賴于制造商...

所以一旦制造商地址改變, 往往導(dǎo)致要修改數(shù)據(jù)庫中多個數(shù)據(jù)行.

就不符合第三范式了.


解決方法就如上面第二范式的例子, 把 制造商和其地址的對應(yīng)關(guān)系放到另1張表中.


Boyce-Codd 范式

所謂的BC范式,?? 其實是第三范式的一個子集.

第三范式規(guī)定所有非主鍵屬性都不能依賴于其中之一的非主鍵屬性

BC范式更加嚴(yán)格,? 所有屬性都不能依賴于其中之一的非主鍵屬性.


依舊是說, BC范式中的主鍵不能依賴于任何非主鍵.


例子:

國家(key) ?? 縮寫???? 人口?? 區(qū)域

日本?????????? JPN????? 1億?? 亞洲

英國??? ? ? ?? ENG???? 半億? 歐洲


上面例子中的主鍵國家能決定縮寫, 但是縮寫也能決定國家, 所以國家和縮寫之間是互相依賴的,? 主鍵依賴于了非主鍵, 它符合第三范式

但是不符合BC范式...







總結(jié)

以上是生活随笔為你收集整理的数据库范式介绍的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。