




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、 關(guān)系數(shù)據(jù)庫設(shè)計(jì)實(shí)際關(guān)系數(shù)據(jù)庫設(shè)計(jì)實(shí)際 本章要點(diǎn)本章處理兩個(gè)問題:什么樣的關(guān)系方式是高質(zhì)量的關(guān)系方式;怎樣將一個(gè)不好的關(guān)系方式轉(zhuǎn)換為一組高質(zhì)量的關(guān)系方式的集合。4.1 關(guān)系方式的設(shè)計(jì)問題4.1.1 不好的關(guān)系方式存在的問題不好的關(guān)系方式存在的問題例例4.1 思索如下關(guān)系方式思索如下關(guān)系方式SCSNO,SNAME,DEPTNO,DEPTNAME,CNO,GRADE,其中屬性的含義分別是學(xué)號、學(xué)生姓名、班級其中屬性的含義分別是學(xué)號、學(xué)生姓名、班級號、系名、課程號和成果。號、系名、課程號和成果。該關(guān)系方式的當(dāng)前值如下:該關(guān)系方式的當(dāng)前值如下: 表表4.1 SC4.1 SC的一個(gè)關(guān)系的一個(gè)關(guān)系SNOS
2、NAMECLASSNODNAMECNOGRADE010301李明C0101計(jì)算機(jī)系C00190010301李明C0101計(jì)算機(jī)系C00270010301李明C0101計(jì)算機(jī)系C00385010302王平C0101計(jì)算機(jī)系C00190010302王平C0101計(jì)算機(jī)系C00390010303張立C0102計(jì)算機(jī)系C00175010303張立C0102計(jì)算機(jī)系C00285010404林麗萍D0101工商管理C00180010404林麗萍D0101工商管理C00285010404林麗萍D0101工商管理C00470它存在數(shù)據(jù)冗余和更新異常它存在數(shù)據(jù)冗余和更新異常n數(shù)據(jù)冗余數(shù)據(jù)冗余 n修正費(fèi)事修正費(fèi)事
3、n(3) (3) 插入異常插入異常n(4) (4) 刪除異常刪除異常4.1.3 本章的符號商定用英文字母表開頭的字母A、B、C、 表示屬性;用英文字母表結(jié)尾的字母 、U、V、W、X、Y、Z表示屬性集;假設(shè)R表示關(guān)系方式,那么r表示其關(guān)系。將關(guān)系方式R(A,B,C)表示為ABC,將屬性集 A1,An 表示為A1An,并集XY表示為XY,并集X A 表示為XA。4.2 函數(shù)依賴4.2.1 函數(shù)依賴的定義函數(shù)依賴的定義定義定義4.1 設(shè)有關(guān)系方式設(shè)有關(guān)系方式R(U),X和和Y都是都是U的子集。假設(shè)對于的子集。假設(shè)對于R(U)的任一能夠的關(guān)系的任一能夠的關(guān)系r,r中不能夠存在兩個(gè)元組在中不能夠存在兩個(gè)
4、元組在X上值一樣而在上值一樣而在Y上值不同,那么稱函數(shù)依賴上值不同,那么稱函數(shù)依賴XY在在R(U)中成立。中成立。例例4.2 4.2 設(shè)關(guān)系方式設(shè)關(guān)系方式E EENOENO,NameName,AddressAddress,PhonePhone,其中屬性的含義是職工號、姓名、家,其中屬性的含義是職工號、姓名、家庭地址和聯(lián)絡(luò)。思索函數(shù)依賴庭地址和聯(lián)絡(luò)。思索函數(shù)依賴ENOPhoneENOPhone在在E E上上能否成立?能否成立?假設(shè)規(guī)定每個(gè)職工只能有一個(gè)聯(lián)絡(luò),那么該函數(shù)假設(shè)規(guī)定每個(gè)職工只能有一個(gè)聯(lián)絡(luò),那么該函數(shù)依賴成立;但假設(shè)允許一個(gè)職工有多個(gè)聯(lián)絡(luò),依賴成立;但假設(shè)允許一個(gè)職工有多個(gè)聯(lián)絡(luò),那么該函
5、數(shù)依賴不成立。那么該函數(shù)依賴不成立。 從定義從定義4.14.1可以知道,函數(shù)依賴是針對關(guān)系方式可以知道,函數(shù)依賴是針對關(guān)系方式而言的,不能只根據(jù)關(guān)系方式的一個(gè)實(shí)例就斷而言的,不能只根據(jù)關(guān)系方式的一個(gè)實(shí)例就斷定一個(gè)函數(shù)依賴在這個(gè)關(guān)系方式上成立。定一個(gè)函數(shù)依賴在這個(gè)關(guān)系方式上成立。 以下是關(guān)于函數(shù)依賴的幾個(gè)術(shù)語和記號:以下是關(guān)于函數(shù)依賴的幾個(gè)術(shù)語和記號:(1) 在XY中,X是決議要素,也稱為左部;Y是依賴要素,也稱為右部。(2) 假設(shè)XY且YX,那么稱XY是平凡的函數(shù)依賴。(3) 假設(shè)XY且Y X,那么稱XY是非平凡的函數(shù)依賴。(4) 假設(shè)XY且XY= ,那么稱XY是完全非平凡的函數(shù)依賴。(5)
6、假設(shè)XY且YX,那么表示為XY。(6) 假設(shè)Y不函數(shù)依賴于X,那么表示為X Y。完全函數(shù)依賴部分函數(shù)依賴完全函數(shù)依賴部分函數(shù)依賴定義定義4.2 4.2 在關(guān)系方式在關(guān)系方式R(U)R(U)中,中,XYXY,X X和和Y Y都是都是U U的子集。假設(shè)對任一的子集。假設(shè)對任一X X,X XX X,都有,都有X X Y Y,那,那么稱么稱Y Y完全函數(shù)依賴于完全函數(shù)依賴于X X,記為,記為XYXY;假設(shè)存在;假設(shè)存在一一X X,X XX X,使,使X XYY成立,那么稱成立,那么稱Y Y部分函數(shù)部分函數(shù)依賴于依賴于X X,記為,記為XYXY。完全函數(shù)依賴也稱為左部不可約依賴。完全函數(shù)依賴也稱為左部不
7、可約依賴。左部是單屬性的函數(shù)依賴是完全函數(shù)依賴。左部是單屬性的函數(shù)依賴是完全函數(shù)依賴。fp定義定義4.3 4.3 在關(guān)系方式在關(guān)系方式R(U)R(U)中,中,X X、Y Y和和Z Z都都是是U U的子集,假設(shè)的子集,假設(shè)XYXY,YZYZ,Y Y X X,Y Y X X,Z Z XYXY,那么稱,那么稱Z Z傳送函數(shù)依賴于傳送函數(shù)依賴于X X,記為記為XZXZ4.2.2 關(guān)系方式的鍵在關(guān)系方式中,候選鍵具有獨(dú)一標(biāo)識作用和不可約性。定義4.4 在關(guān)系方式R上,假設(shè)X=U,那么稱X是R的一個(gè)超鍵。候選鍵 假設(shè)X是R(U)的一個(gè)超鍵,且對于X的任一真子集Z,都有ZU,那么稱X是R的一個(gè)候選鍵。主鍵
8、當(dāng)一個(gè)關(guān)系方式僅有一個(gè)候選鍵時(shí),這個(gè)候選鍵就是主鍵;交換鍵 當(dāng)一個(gè)關(guān)系方式有多個(gè)候選鍵時(shí),需求從中指定一個(gè)作為主鍵,其他的稱為交換鍵。全鍵 假設(shè)關(guān)系方式的一個(gè)候選鍵就等于U,那么稱為全鍵。F+主屬性/非主屬性定義定義4.5 4.5 假設(shè)假設(shè)A A是關(guān)系方式是關(guān)系方式R R的候選鍵中的屬的候選鍵中的屬性,那么稱性,那么稱A A為為R R的主屬性,否那么稱的主屬性,否那么稱A A為為R R的的非主屬性。非主屬性。4.3 函數(shù)依賴和規(guī)范化函數(shù)依賴和規(guī)范化關(guān)系方式的好壞級別,可用規(guī)范化方式Normal Forms,簡寫為NF范式來表示。第一范式1NF將范式分為假設(shè)干級,把滿足最低條件的關(guān)系方式稱為1N
9、F的方式;第二范式2NF 1NF的關(guān)系方式假設(shè)滿足進(jìn)一步的限定條件那么稱為2NF的方式;以此類推分為五級范式。規(guī)范化 將一個(gè)低一級的關(guān)系方式分解成假設(shè)干高一級關(guān)系方式的集合的過程稱為規(guī)范化。4.3.1 第一范式第三范式431 .1 第一范式1第一范式定義定義4. 6 假設(shè)關(guān)系方式R的每一關(guān)系r的屬性值都是不可分的,那么稱R是第一范式1NF的方式。簡稱R是1NF?!胺至坎豢稍俜质?NF的衡量規(guī)范。關(guān)系數(shù)據(jù)庫實(shí)際研討的關(guān)系方式必需到達(dá)這個(gè)根本要求,不滿足1NF的關(guān)系方式稱為非規(guī)范化的關(guān)系方式。2非1NF的關(guān)系例如 表4.2 表中有反復(fù)組。表4.2 表中有反復(fù)組 SNOSNAMECLASSNODEP
10、TNAMECNOGRADE010301 李明C0101計(jì)算機(jī)系C001 C002C003 907085010302王平C0101計(jì)算機(jī)系C001C0039090010303張立C0101計(jì)算機(jī)系C001C0027585010404林麗萍D0101工商管理C001C002C004808570表4.3 表頭有層次構(gòu)造 職工號職工名工資基本工資 附加補(bǔ)貼J020345趙紀(jì)950 600 J020346周順 800 4003將非將非INF的關(guān)系轉(zhuǎn)換為的關(guān)系轉(zhuǎn)換為INF的關(guān)系的關(guān)系將表將表4.2中的反復(fù)組所在的行一切值都反復(fù),得到中的反復(fù)組所在的行一切值都反復(fù),得到INF的關(guān)系如表的關(guān)系如表4.1所示。
11、所示。去掉表去掉表4.3中表頭層次構(gòu)造,得到中表頭層次構(gòu)造,得到INF的關(guān)系如表的關(guān)系如表4.4所示。所示。表4.4 INF的關(guān)系 職工號職工名附加補(bǔ)貼J020345趙紀(jì)950 800 J020346周順600400根本工資4INF的關(guān)系方式存在的缺乏431 .2第二范式1第二范式定義第二范式定義定義定義4.7 假設(shè)關(guān)系方式假設(shè)關(guān)系方式R是是1NF的,且它的每個(gè)非主屬性的,且它的每個(gè)非主屬性對候選鍵都是完全函數(shù)依賴的,那么稱對候選鍵都是完全函數(shù)依賴的,那么稱R是第二范式是第二范式2NF的方式。假設(shè)一個(gè)數(shù)據(jù)庫方式中的關(guān)系方式的方式。假設(shè)一個(gè)數(shù)據(jù)庫方式中的關(guān)系方式都是都是2NF,那么稱這個(gè)數(shù)據(jù)庫是
12、,那么稱這個(gè)數(shù)據(jù)庫是2NF的數(shù)據(jù)庫方式。的數(shù)據(jù)庫方式。2將第一范式的關(guān)系方式規(guī)范化為將第一范式的關(guān)系方式規(guī)范化為2NF的關(guān)系方式集的關(guān)系方式集要將非要將非2NF的關(guān)系方式的關(guān)系方式R規(guī)范化為規(guī)范化為2NF的關(guān)系方式的關(guān)系方式集,可以用分解的方法消除非主屬性部分依賴于候選集,可以用分解的方法消除非主屬性部分依賴于候選鍵的情形。即將產(chǎn)生部分依賴的非主屬性和它所依賴鍵的情形。即將產(chǎn)生部分依賴的非主屬性和它所依賴的主屬性單獨(dú)組成一個(gè)關(guān)系方式,其他的屬性構(gòu)成另的主屬性單獨(dú)組成一個(gè)關(guān)系方式,其他的屬性構(gòu)成另一個(gè)關(guān)系方式。一個(gè)關(guān)系方式。例例4.3 4.3 在例在例4.14.1的關(guān)系方式的關(guān)系方式SCSCSN
13、OSNO,SNAMESNAME,DEPTNODEPTNO,DEPTNAMEDEPTNAME,CNOCNO,GRADEGRADE中,中,SNOSNO,CNOCNO是是SCSC的獨(dú)一候選鍵,的獨(dú)一候選鍵,存在對候選鍵的部分依賴:存在對候選鍵的部分依賴:SNO,CNOSNO,CNO SNAME SNAME SNO,CNOSNO,CNO CLASSNO CLASSNO 關(guān)系方式關(guān)系方式SCSC SNO,CNOSNO,CNO DEPTNAME DEPTNAME 不是不是2NF2NF的的分解為分解為SL(SNOSL(SNO,SNAMESNAME,CLASSNO, DEPTNAME)CLASSNO, DEP
14、TNAME)和和SC1SC1SNOSNO,CNOCNO,GradeGrade, SL SL和和SC1SC1各有獨(dú)一候選鍵各有獨(dú)一候選鍵SNOSNO和和SNOSNO,CNOCNO 兩個(gè)關(guān)系方式中都不存在非主屬性對候選鍵的部兩個(gè)關(guān)系方式中都不存在非主屬性對候選鍵的部分函數(shù)依賴。分函數(shù)依賴。 SL SL和和SC1SC1都是都是2NF2NF的。的。ppp表4.5 SC1的一個(gè)關(guān)系 Key: (SNO, CNO)SNOCNOGRADE010301C00190010301C00270010301C00385010302C00190010302C00390010303C00175010303C0028501
15、0404C00180010404C00285010404C00470將原關(guān)系分別在SL和SC1上投影,得到如下兩個(gè)關(guān)系: 表表4.6 SL4.6 SL的一個(gè)關(guān)系的一個(gè)關(guān)系 Key: Key: SNO SNO SNOSNAMECLASSNODEPTNAME010301李明C0101計(jì)算機(jī)系010302王平C0101計(jì)算機(jī)系010303張立C0102計(jì)算機(jī)系010404林麗萍D0101工商管理32NF的關(guān)系方式存在的缺乏431 .2第三范式 1第三范式定義第三范式定義定義定義4. 8 R是是2NF的,假設(shè)的,假設(shè)R的每個(gè)的非主的每個(gè)的非主屬性都不傳送依賴于任何候選鍵,那么稱屬性都不傳送依賴于任何候
16、選鍵,那么稱R是第是第三范式三范式3NF的方式。假設(shè)一個(gè)數(shù)據(jù)庫方式中的方式。假設(shè)一個(gè)數(shù)據(jù)庫方式中的關(guān)系方式都是的關(guān)系方式都是3NF,那么稱這個(gè)數(shù)據(jù)庫是,那么稱這個(gè)數(shù)據(jù)庫是3NF的數(shù)據(jù)庫方式。的數(shù)據(jù)庫方式。2將第二范式的關(guān)系方式規(guī)范化為將第二范式的關(guān)系方式規(guī)范化為3NF的關(guān)系方的關(guān)系方式集式集方法方法 用分解的方法消除非主屬性傳送依賴于候選用分解的方法消除非主屬性傳送依賴于候選鍵的情形。即將產(chǎn)生傳送依賴的非主屬性和它鍵的情形。即將產(chǎn)生傳送依賴的非主屬性和它所依賴的非主屬性單獨(dú)組成一個(gè)關(guān)系方式,其所依賴的非主屬性單獨(dú)組成一個(gè)關(guān)系方式,其他的屬性構(gòu)成另一個(gè)關(guān)系方式。他的屬性構(gòu)成另一個(gè)關(guān)系方式。例例4
17、.4 4.4 在例在例4.34.3中的中的SLSLSNOSNO,SNAMESNAME,CLASSNO, CLASSNO, DEPTNAMEDEPTNAME中:中: SNO CLASSNO SNO CLASSNO,且,且CLASSNO DEPTNAMECLASSNO DEPTNAME SNO DEPTNAME SNO DEPTNAME即存在非主屬性即存在非主屬性DEPTNAMEDEPTNAME對候選鍵對候選鍵SNOSNO的傳送依賴,的傳送依賴, SLSL不是不是3NF3NF的。的。將將SLSL分解為分解為CDCDCLASSNOCLASSNO,DEPTNAMEDEPTNAME和和 S SSNOSN
18、O,SNAMESNAME,CLASSNOCLASSNO CD CD的關(guān)鍵字是的關(guān)鍵字是CLASSNOCLASSNO, S S的關(guān)鍵字是的關(guān)鍵字是SNOSNO, 不存在非主屬性對候選鍵的傳送依賴,不存在非主屬性對候選鍵的傳送依賴, SL SL、 CD CD都是都是3NF3NF的。的。 將原關(guān)系將原關(guān)系SLSL在在CDCD和和S S上投影,得:上投影,得:t表表4.7 CD4.7 CD的一個(gè)關(guān)系的一個(gè)關(guān)系 Key: Key: CLASSNO CLASSNO SNOSNAME CLASSNO010301 李明C0101010302 王平C0101010303 張立C0102010404 林麗萍D01
19、01CLASSNODEPTNAMEC0101計(jì)算機(jī)系C0101計(jì)算機(jī)系C0102計(jì)算機(jī)系D0101工商管理表表4.8 S4.8 S的一個(gè)關(guān)系的一個(gè)關(guān)系 Key: Key: SNOSNO在SC1SNO,CNO,Grade中:SNO,CNO GRADE即在SC1中不存在非主屬性對候選鍵的傳送依賴, SC1是3NF的。 33NF的關(guān)系方式存在的缺乏的關(guān)系方式存在的缺乏部分依賴和傳送依賴是產(chǎn)生冗余和異常的兩個(gè)重要緣由,3NF中消除了非主屬性對候選鍵的部分依賴和傳送依賴,因此具有較好的性質(zhì)。但是3NF中并未排除主屬性對候選鍵的部分依賴和傳送依賴,因此尚不能徹底消除異常。4.3.2 Boyce-Codd范式定義定義4. 9 R4. 9 R是是1NF1NF的,假設(shè)的,假設(shè)F F中的每個(gè)非中的每個(gè)非平凡的函數(shù)依賴平凡的函數(shù)依賴XYXY的左部都包含了的左部都包含了R R的一個(gè)候的一個(gè)候選鍵,那么稱選鍵,那么稱R R是是BCNFBCNF的方式。假設(shè)一個(gè)數(shù)據(jù)庫的方式。假設(shè)一個(gè)數(shù)據(jù)庫方式中的關(guān)系方式都是方式中的關(guān)系方式都是BCNFBCNF的,那么稱這個(gè)數(shù)的,那么稱這個(gè)數(shù)據(jù)庫是據(jù)庫是BCNFBCNF的數(shù)據(jù)庫方式。的數(shù)據(jù)庫方式。BCNFBCNF的定義中規(guī)定了的定義中規(guī)定了F F的一切函數(shù)依賴的決議要的一切函數(shù)依賴的決議要素都包含鍵,因此,一個(gè)素都
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 公司攝影比賽策劃方案
- 公司糖酒會策劃方案
- 公司新年文藝活動方案
- 公司檢查活動方案
- 公司組織與管理策劃方案
- 公司經(jīng)營團(tuán)建活動方案
- 公司社團(tuán)手工活動方案
- 公司搞游園活動方案
- 公司母親節(jié)現(xiàn)場活動方案
- 公司科普短視頻策劃方案
- 鹵菜店供貨合同協(xié)議書
- 華為云:2024年EMS彈性內(nèi)存存儲技術(shù)白皮書
- 《道德經(jīng)》的智慧啟示智慧樹知到期末考試答案章節(jié)答案2024年中國海洋大學(xué)
- 卡粘式連接薄壁不銹鋼管道工程技術(shù)規(guī)程
- 2024年山東普通高中學(xué)業(yè)水平等級考試化學(xué)(原卷版)
- 接警員試題題庫
- 湖南省岳陽市2024年八年級下學(xué)期期末物理試卷附答案
- DZ∕T 0284-2015 地質(zhì)災(zāi)害排查規(guī)范(正式版)
- 《風(fēng)電功率預(yù)測功能規(guī)范》
- 關(guān)于讀后續(xù)寫的可行操作課件-高三英語一輪復(fù)習(xí)
- 2023年貴州黔西南州專項(xiàng)招聘國企業(yè)工作人員21人考前自測高頻難、易考點(diǎn)模擬試題(共500題)含答案詳解
評論
0/150
提交評論