下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
一、數(shù)據(jù)庫范式
范式:英文名稱是NormalForm,它是英國人E.F.Codd(關(guān)系數(shù)據(jù)庫老祖宗)在上個世紀(jì)
70年代提出關(guān)系數(shù)據(jù)庫模型后總結(jié)出來,范式是關(guān)系數(shù)據(jù)庫理論基本,也是咱們在設(shè)計數(shù)
據(jù)庫構(gòu)造過程中所要遵循規(guī)則和指引辦法。當(dāng)前有跡可尋共有8種范式,依次是:INF,2NF,
3NF,BCNF,4NF,5NF,DKNF,6NF。普通所用到只是前三個范式,即:第一范式(1NF),
第二范式(2NF),第三范式(3NF)。下面就簡樸簡介下這三個范式。
?第一范式(INF):強調(diào)是列原子性,即列不可以再提成其她幾列。
考慮這樣一種表:【聯(lián)系人】(姓名,性別,電話)
如果在實際場景中,一種聯(lián)系人有家庭電話和公司電話,那么這種表構(gòu)造設(shè)計就沒有達(dá)到
INFo要符合1NF咱們只需把列(電話)拆分,即:【聯(lián)系人】(姓名,性別,家庭電話,
公司電話)。1NF較好辨別,但是2NF和3NF就容易搞混淆。
?第二范式(2NF):一方面是1NF,此外包括兩某些內(nèi)容,一是表必要有一種主鍵;二是
沒有包括在主鍵中列必要完全依賴于主鍵,而不能只依賴于主鍵一某些。
考慮一種訂單明細(xì)表:【OrderDetail】(OrderlD,ProductID,UnitPrice,Discount,Quantity.
ProductName)。
由于咱們懂得在一種訂單中可以訂購各種產(chǎn)品,因此單單一種OrderlD是局限性以成為主
鍵,主鍵應(yīng)當(dāng)是(OrderlD,ProductID)。顯而易見Discount(折扣),Quantity(數(shù)量)完全
依賴(取決)于主鍵(OderlD,ProductID),而UnitPrice,ProductName只依賴于ProductlD?
因此OrderDetail表不符合2NF。不符合2NF設(shè)計容易產(chǎn)生冗余數(shù)據(jù)。
可以把(OrderDetail]表拆分為[OrderDetail](OrderlD,ProductID,Discount,Quantity)
和【Product】(ProductID,UnitPrice,ProductName)來消除原訂單表中UnitPrice.ProductName
多次重復(fù)狀況。
?第三范式(3NF):一方面是2NF,此外非主鍵列必要直接依賴于主鍵,不能存在傳遞依
賴。即不能存在:非主鍵列A依賴于非主鍵列B,非主鍵列B依賴于主鍵狀況。
考慮一種訂單表【Order】(OrderlD,OrderDate,CustomerlD,CustomerName,CustomerAddr,
CustomerCity)主鍵是(OrderlD)o
其中OrderDate.CustomerlD.CustomerName,CustomerAddr,CustomerCity等非主鍵列都
完全依賴于主鍵(OrderlD),因此符合2NF。但是問題是CustomerName.CustomerAddr,
CustomerCity直接依賴是CustomerlD(非主犍列),而不是直接依賴于主犍,它是通過傳遞
才依賴于主鍵,因此不符合3NF。
通過拆分【Order】為【Order】(OrderlD,OrderDate,CustomerlD)fQ[Customer](CustomerlD,
CustomerName,CustomerAddr,CustomerCity)從而達(dá)至ij3NF。
第二范式(2NF)和第三范式(3NF)概念很容易混淆,區(qū)別它們核心點在于,2NF:非主鍵
列與否完全依賴于主鍵,還是依賴于主鍵一某些;3NF:非主鍵列是直接依賴于主鍵,還是
直接依賴于非主鍵列。
?BCNF是比第三范式更嚴(yán)格一種范式。它規(guī)定關(guān)系模型中所有屬性(涉及主屬性和非主屬
性)都不傳遞依賴于任何候選核心字。也就是說,當(dāng)關(guān)系型表中功能上互相依賴那些列每一
列都是一種候選核心字時候,該滿足BCNF。
BCNF事實上是在第三范式基本上,進(jìn)一步消除了主屬性傳遞依賴。
3.舉例
有這樣一種配件管理表WPE(WNO,PNO,ENO,QNT),其中WNO表達(dá)倉庫號,PNO表達(dá)配件
號,ENO表達(dá)職工號,QNT表達(dá)數(shù)量。
有如下約束規(guī)定:
(1)一種倉庫有多名職工;
(2)1種職工僅在一種倉庫工作;
(3)每個倉庫里一種型號配件由專人負(fù)責(zé),但一種人可以管理幾種配件;
(4)同一種型號配件可以分放在幾種倉庫中。
分析表中函數(shù)依賴關(guān)系,可以得到:
(1)ENO->WNO;
(2)(WNO,PNO)->QNT
(3)(WNO,PNO)->ENO
(4)(ENO,PNO)->QNT
可以看到,候選鍵有:(ENO,PN。);(WNO,PNO)o因此,ENO,PNO,WNO均為主屬性,QNT
為非主屬性。顯然,非主屬性是直接依賴于候選鍵。因此此表滿足第三范式。
而咱們觀測一下主屬性:(WNO,PN。)->ENO;ENO->WNO,顯然WNO對于候選鍵
(WNO,PNO)存在傳遞依賴,因此不符合BCNF.
解決這個問題辦法是分拆為兩個表:管理表EP(ENO,PNO,QNT);工作表EW(ENO,
WNO)。但這樣做會導(dǎo)致函數(shù)依賴(WNO,PNO)->ENO丟失。
4.應(yīng)用
雖然,不滿足BCNF,也會導(dǎo)致某些冗余和一致性問題。但是,將表分解成滿足BCNF表
乂也許丟失某些函數(shù)依賴。因此,普通狀況下不會強制規(guī)定關(guān)系表要滿足BCNF。
?第四范式(4NF)
1.定義
第四范式需要滿足如下規(guī)定:
(1)必要滿足第三范式
(2)表中不能包括一種實體兩個或各種互相獨立多值因子。
2.闡明
顯然,第四范式也是一種比第三范式嚴(yán)格范式。
第四范式意思是:當(dāng)一種表中非主屬性互相獨立時(3NF),這些非主屬性不應(yīng)當(dāng)有多
值。若有多值就違背了第四范式。定義比較抽象,可以參照下面例子理解。
3.舉例
有這樣一種顧客聯(lián)系方
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度汽車零部件技術(shù)交易與許可證協(xié)議3篇
- 環(huán)保與經(jīng)濟雙贏農(nóng)村住房墻材的可持續(xù)發(fā)展路徑
- 二零二五年度餐飲店食品安全監(jiān)督協(xié)議3篇
- 2025年度個人借款借條設(shè)計及法律風(fēng)險防控合同3篇
- 2025年度個人股權(quán)代持解除條件及補償協(xié)議3篇
- 二零二五年度新能源汽車零部件銷售協(xié)議3篇
- 智能制造技術(shù)助力醫(yī)療設(shè)備升級換代
- 2025年度漁船買賣合同(含漁港租賃權(quán))3篇
- 二零二五年度彩鋼板生產(chǎn)廢棄物處理合同3篇
- 跨領(lǐng)域合作如何有效探索學(xué)生個性化學(xué)習(xí)路徑
- 辦公設(shè)備(電腦、一體機、投影機等)采購 投標(biāo)方案(技術(shù)方案)
- 查干淖爾一號井環(huán)評
- 案卷評查培訓(xùn)課件模板
- 體檢中心分析報告
- 2024年江蘇省樣卷五年級數(shù)學(xué)上冊期末試卷及答案
- 波浪理論要點圖解完美版
- 金融交易數(shù)據(jù)分析與風(fēng)險評估項目環(huán)境敏感性分析
- 牛頓環(huán)與劈尖實驗論文
- 移動商務(wù)內(nèi)容運營(吳洪貴)任務(wù)四 其他平臺載體的運營方式
- 浙教版科學(xué)八年級下冊全冊課件
- 2022年中國止血材料行業(yè)概覽:發(fā)展現(xiàn)狀對比分析研究報告(摘要版) -頭豹
評論
0/150
提交評論