




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
4.3關(guān)系模式的范式本章主要內(nèi)容:(1)關(guān)系模式的設(shè)計問題:數(shù)據(jù)冗余、數(shù)據(jù)操作異常和數(shù)據(jù)不一致(2)函數(shù)依賴:部分依賴、傳遞依賴、平凡依賴(3)關(guān)系模式的范式:1NF、2NF、3NF、BCNF(4)關(guān)系模式的規(guī)范化:消除局部依賴、消除傳遞依賴4.3關(guān)系模式的范式關(guān)系模式的好壞標(biāo)準(zhǔn)就是模式的范式(NormalForms,NF)。范式與函數(shù)依賴有直接的聯(lián)系。滿足不同程度要求的范式,稱為不同的范式。共有6種范式:1NF、2NF、3NF、BCNF、4NF、5NF。所謂“第幾范式”,一般是指范式的某一級別,越往后,級別越高,其要求也越高。
一個低一級范式的關(guān)系模式通過模式分解,化為幾個高一級范式的關(guān)系模式,這個過程稱為關(guān)系模式的規(guī)范化(Normalization)。4.3.1第一范式(1NF)定義4-3如果關(guān)系模式R的每一個關(guān)系,其屬性值都是不可分的原子值,則稱R是第一范式的模式(1NF)。滿足1NF范式的關(guān)系稱為規(guī)范化的關(guān)系,否則稱為非規(guī)范化的關(guān)系。關(guān)系數(shù)據(jù)庫中所說的關(guān)系,都滿足1NF。4.3.2第二范式(2NF)定義4-4設(shè)關(guān)系模式R為1NF,如果R的每個非主屬性都完全函數(shù)依賴于候選碼,則稱R是第二范式的模式(2NF)。不滿足2NF范式的關(guān)系模式,一定存在非主屬性對關(guān)鍵碼的局部依賴,進而存在數(shù)據(jù)冗余,如圖所示。鍵屬性值非屬性值4.3.2第二范式(2NF)
例4-3設(shè)有學(xué)生選課關(guān)系模式SC(sNo,cNo,Score,cName),其屬性分別表示學(xué)號、課程編號、考試成績、課程名稱。(sNo,cNo)為主鍵。sNocNocName
在SC上,有兩個FD:(sNo,cNo)
cName,cNocName,非主屬性cName局部依賴于主屬性cNo,因此該模式不滿足2NF。如圖所示。解決辦法:將模式分解,使其局部依賴被消除。例如,將SC分解為如下兩個模式:R1(sNo,cNo,Score),R2(cNo,cName)4.3.3第三范式(3NF)定義4-5設(shè)關(guān)系模式R為1NF,如果R的每個非主屬性都不傳遞依賴于候選碼,則稱R是第三范式的模式(3NF)。定理4-1如果R是3NF模式,則R一定是2NF模式。這表明,A傳遞依賴于候選碼W,這與R為3NF模式矛盾。證畢。
WX,XA證明:采用反證法。設(shè)關(guān)系模式R(U)的一個候選鍵為W。假定R不是2NF模式,則至少存在某個非主屬性A,A∈W,使得A部分依賴與W,即存在W的真子集X,使逆否命題怎么說?在C上,有兩個FD:cNotNo,tNotName,非主屬性tName傳遞依賴于主屬性cNo,因此該模式不滿足3NF。但該模式不存在非主屬性的部分依賴,它滿足2NF。如圖所示。4.3.3第三范式(3NF)例4-4設(shè)有課程關(guān)系模式C(cNo,cName,tNo,tName),其屬性分別表示課程編號、課程名稱、教師編號、教師姓名。cNo為主鍵,規(guī)定:每門課程只能安排一個教師任教。tNotNameR3(cNo,cName,tNo),R4(tNo,tName)cNo解決辦法:將模式分解,使其傳遞依賴被消除。例如,將C分解為如下兩個模式:4.3.4BCNF(Boyce-CoddNF)在3NF模式中,并沒有排除主屬性對候選碼的傳遞依賴。因此,有必要提出更高一級的范式BCNF(Boyce-CoddNF),它是由Boyce和Codd共同提出的,該范式是3NF的改進形式。從定義中可以看出,如果R是BCNF模式,則R一定是3NF模式。反之不一定成立。定義4-6設(shè)關(guān)系模式R為1NF,如果R的每個屬性都不傳遞依賴于候選碼,則稱滿足BCNF范式。4.3.4BCNF(Boyce-CoddNF)例4.5設(shè)有關(guān)系模式R(BookNo,BookName,AuthorNo),其屬性分別表示圖書編號、書名、作者編號。(BookNo,AuthorNo)為主鍵,規(guī)定:每一本書可由多名作者編著,每個作者參與編著的書名各不相同。因此,(BookName,AuthorNo)也可做候選鍵。
這樣,在R上,有下面兩個FD:(BookName,AuthorNo)
BookNoBookNoBookName
3個屬性均為主屬性,不存在非主屬性的傳遞依賴,故R是3NF模式。但是,主屬性BookName傳遞依賴于候選碼(BookName,AuthorNo),故R不滿足BCNF。4.3.4BCNF(Boyce-CoddNF)例4.5設(shè)有關(guān)系模式R(BookNo,BookName,AuthorNo)
在R上,有下面兩個FD:(BookName,AuthorNo)
BookNoBookNoBookName解決辦法:將模式分解,使其主屬性傳遞依賴被消除。例如,將R分解為如下兩個模式:R5(BookNo,BookName),R6(BookNo,AuthorNo)如此,分解后的R5、R6均滿足BCNF。當(dāng)然,這個分解不是完美的,因為它丟失了函數(shù)依賴:(BookName,AuthorNo)
BookNo。4.3.5多值依賴(Multi-ValuedDependency,MVD)與第四范式(4NF)一般的關(guān)系模式,如果滿足3NF或BCNF,已經(jīng)足夠能夠表達現(xiàn)實中的實體及實體間的聯(lián)系。但是,在現(xiàn)實世界中,還存在一種屬性間的其他類型的約束,例如多值依賴,此時,僅滿足BCNF就不夠了。4.3.5多值依賴(Multi-ValuedDependency,MVD)與第四范式(4NF)例4-6設(shè)有關(guān)系模式R(課程,學(xué)生,先修課程),每一門課程可被多個學(xué)生選修,每門課程有多門先修課程。這個模式中,屬性“學(xué)生”與“先修課程”沒有直接的聯(lián)系,一個學(xué)生要選修一門課程,則必須先選修該門課程的所有先修課。左圖中的屬性為多值屬性,它不是1NF關(guān)系。若要表示為1NF的關(guān)系,必須轉(zhuǎn)為右圖所示。此時,R的鍵為全部屬性,因而R是BCNF模式。但顯然,這個模式存在大量的數(shù)據(jù)冗余。課程學(xué)生先修課程數(shù)據(jù)庫張三李明C語言數(shù)據(jù)結(jié)構(gòu)離散數(shù)學(xué)課程學(xué)生先修課程數(shù)據(jù)庫數(shù)據(jù)庫數(shù)據(jù)庫數(shù)據(jù)庫數(shù)據(jù)庫數(shù)據(jù)庫張三張三張三李明李明李明C語言數(shù)據(jù)結(jié)構(gòu)離散數(shù)學(xué)C語言數(shù)據(jù)結(jié)構(gòu)離散數(shù)學(xué)4.3.5多值依賴(Multi-ValuedDependency,MVD)與第四范式(4NF)這時,如果把R分解為如下兩個模式:
R7(課程,先修課程)和R8(課程,學(xué)生)就能消除冗余。其實,只要兩個獨立的多值屬性出現(xiàn)在同一個模式中,就會出現(xiàn)多值依賴情況。4.3.5多值依賴(Multi-ValuedDependency,MVD)與第四范式(4NF)定義4-7設(shè)關(guān)系模式R(U)為1NF,X、Y為U的子集,Z=U-X-Y,如果R的任一關(guān)系r,對于X的任一給定值,Y必有多個值與之對應(yīng),Y的這組值與Z的值無關(guān),則稱Y多值依賴于X,或X多值決定Y,記作XY。定義4-8
對于屬性集U上的多值依賴XY,如果Y是X的子集,或X∪Y=U,則稱XY為平凡的多值依賴,否則為非平凡的多值依賴。例如,在例4-6中的關(guān)系模式R(課程,學(xué)生,先修課程),有:課程
先修課程,課程
學(xué)生4.3.5多值依賴(Multi-ValuedDependency,MVD)與第四范式(4NF)
性質(zhì)4-1設(shè)關(guān)系模式R(U)為1NF,W為R的候選碼,W≠U,Z=U-W,若Z上不存在取值唯一限制,則
Z一定多值依賴于W,即WU-W。定義4-9設(shè)關(guān)系模式R(U)為1NF,F(xiàn)為R上成立的FD和MVD的集合。如果F中任一非平凡的多值依賴XY的左部X都是R的超鍵,則稱R是4NF模式。例如,學(xué)生關(guān)系模式S(sNo,sName,Sex),顯然sNo{sName,Sex}。
第四范式(4NF)是BCNF的直接推廣,它適用于具有多值依賴的關(guān)系模式。4.3.5多值依賴(Multi-ValuedDependency,MVD)與第四范式(4NF)定理4-2如果R是4NF模式,則R一定是BCNF模式。
證明:采用反證法。假定R(U)是4NF模式,但R不是BCNF模式,從而R必存在傳遞依賴:WX,XY,其中W為R的一個候選鍵,X不是超鍵。此時,可得:XY,這與R是4NF模式矛盾。證畢。4.3.6范式小結(jié)如果R是4NF模式,則R一定不存在非平凡的多值依賴。如果R是BCNF模式,則R可能存在平凡的多值依賴。
例如,學(xué)生模式S(sNo,sName,Sex,Age)是4NF模式,其多值依賴:sNosName,sNoSex,sNoAge都是平凡的多值依賴。它的一個實例,如圖4-9所示。sNosNameSexAgeS01張三男20S02李明男19S03李明男18S04劉英女19S06章芳女194.3.6范式小結(jié)
在關(guān)系模式中,函數(shù)依賴和多值依賴是最重要的兩種依賴。如果只考慮函數(shù)依賴,則滿足3NF或BCNF的關(guān)系模式就比較完美了。如果要考慮多值依賴,則滿足4NF的關(guān)系模式就可以了。除了函數(shù)依賴和多值依賴外,還有一種數(shù)據(jù)依賴,稱之為連接依賴,對應(yīng)的級別為第五范式(5NF)。但是,在現(xiàn)實世界中,連接依賴很少見,一般的數(shù)據(jù)庫設(shè)計幾乎不考慮這種依賴,故這里不介紹5NF。4.4關(guān)系模式的規(guī)范
溫馨提示
- 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)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 常州工程職業(yè)技術(shù)學(xué)院《高級阿拉伯語二》2023-2024學(xué)年第二學(xué)期期末試卷
- 新疆科技學(xué)院《外國史學(xué)名著選讀》2023-2024學(xué)年第二學(xué)期期末試卷
- 淮北理工學(xué)院《社會學(xué)原理類》2023-2024學(xué)年第二學(xué)期期末試卷
- 重慶智能工程職業(yè)學(xué)院《生物統(tǒng)計與應(yīng)用》2023-2024學(xué)年第二學(xué)期期末試卷
- 赤峰學(xué)院《教育史專題研究》2023-2024學(xué)年第二學(xué)期期末試卷
- 梧州學(xué)院《現(xiàn)代舞創(chuàng)編》2023-2024學(xué)年第二學(xué)期期末試卷
- 東北林業(yè)大學(xué)《生物科學(xué)專業(yè)英語》2023-2024學(xué)年第二學(xué)期期末試卷
- 山西航空職業(yè)技術(shù)學(xué)院《攝影報道》2023-2024學(xué)年第二學(xué)期期末試卷
- 合肥共達職業(yè)技術(shù)學(xué)院《現(xiàn)代電子測量技術(shù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 內(nèi)蒙古工業(yè)大學(xué)《概率論與數(shù)據(jù)統(tǒng)計》2023-2024學(xué)年第二學(xué)期期末試卷
- 車輛實際使用權(quán)協(xié)議書范文模板
- 新版加油站全員安全生產(chǎn)責(zé)任制
- 腦出血課件完整版本
- 涼山州小學(xué)數(shù)學(xué)教師業(yè)務(wù)素質(zhì)考試試題(真題+訓(xùn)練)
- 長護險定點機構(gòu)自查報告
- GB/T 6003.2-2024試驗篩技術(shù)要求和檢驗第2部分:金屬穿孔板試驗篩
- 2025年初中地理八年級上冊全冊重點知識點復(fù)習(xí)課件
- 人工智能大模型
- 川教版信息技術(shù)五年級下冊全冊教學(xué)設(shè)計教案
- 重慶市江北區(qū)社區(qū)專職工作者招考聘用高頻500題難、易錯點模擬試題附帶答案詳解
- 掩體構(gòu)筑與偽裝教學(xué)法教案
評論
0/150
提交評論