關(guān)系系統(tǒng)及查詢優(yōu)化與范式定理_第1頁
關(guān)系系統(tǒng)及查詢優(yōu)化與范式定理_第2頁
關(guān)系系統(tǒng)及查詢優(yōu)化與范式定理_第3頁
關(guān)系系統(tǒng)及查詢優(yōu)化與范式定理_第4頁
關(guān)系系統(tǒng)及查詢優(yōu)化與范式定理_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、第四章 范式定理關(guān)系數(shù)據(jù)庫的設(shè)計中,一個非常重要的被視為理論問題的內(nèi)容是如何構(gòu)造合理的關(guān)系,使之能準(zhǔn)確地反應(yīng)現(xiàn)實世界,有利于應(yīng)用和具體的操作。這一問題就是關(guān)系規(guī)范化要研究的問題。通過本章的學(xué)習(xí),應(yīng)重點(diǎn)掌握:函數(shù)依賴及 Armstrong 公理系統(tǒng)為什么要對模式進(jìn)行分解,如何分解如何判斷關(guān)系模式達(dá)到幾范式如何求屬性的閉包及如何求最小函數(shù)依賴集判斷分解后的關(guān)系模式是不是無損連接或保持函數(shù)依賴判斷分解后的關(guān)系模式既無損連接又保持函數(shù)依賴(一 )函數(shù)依賴及相關(guān)概念定義設(shè) R(U) 是屬性集U 上的關(guān)系模式,X ,Y 是 U 的子集。 若對 R(U) 的任何一個可能的關(guān)系 r , r 中不可能存在兩個元

2、組在X 上的屬性值相等,而在Y 上的屬性值不等,則稱X 函數(shù)決定 Y 或 Y 函數(shù)依賴于X,記作: XY。f(1)完全函數(shù)依賴:在R(U) 中,如果XY,并且對于X 的任何一個真子集X ,都有 X不能決定Y,則稱Y 對 X 完全函數(shù)依賴,記作:XY例給定一個學(xué)生選課關(guān)系SC(Sno,Cno,G),我們可以得到F=(Sno ,Cno)G ,對 (Sno,Cno) 中的任何一個真子集Sno 或 Cno 都不能決定G ,所以, G 完全依賴于Sno, Cno。p(2)平凡的函數(shù)依賴:如果XY,但 Y 不完全函數(shù)依賴于X,則稱Y 對 X 部分函數(shù)依賴,記作:XY(3) 傳遞依賴:在R(U) 中,如果X

3、Y , (YX) , YX , YZf則稱 Z 對 X 傳遞依賴。(4) 碼:設(shè)K 為 R(U , F) 中的屬性的組合,若KU,則 K 為 R 的候選碼,若有多個候選碼,選一個作為主碼。注 : 候選碼也稱候選關(guān)鍵字。主屬性和非主屬性: 包含在任何一個候選碼中的屬性叫做主屬性,否則叫做非主屬性。(6) 外碼:若R(U) 中的屬性或?qū)傩越MX 非 R 的碼,但是另一關(guān)系的碼,則稱X 為外碼。范式在關(guān)系數(shù)據(jù)庫中的一個非常重要的問題就是如何評價分解后的各個關(guān)系模式的好壞。通??梢酝ㄟ^判斷分解后的模式達(dá)到幾范式來評價模式的好壞。范式有:1NF 、2NF 、3NF 、BCNF 、4NF 和 5NF 。這幾

4、種范式之間的關(guān)系如下:1NF2NF 3NFBCNF4NF 5NF通過模式分解,將低一級范式的關(guān)系模式分解成了若干個高一級范式的關(guān)系模式的集合,這種過程叫做 規(guī)范化 。下面將給出各個范式的定義。1 1NF( 第一范式 )定義 若關(guān)系模式 R 的每一個分量是不可再分的數(shù)據(jù)項,則關(guān)系模式R 屬于第一范式 (1NF) 。例 供應(yīng)者和它所提供的零件信息,關(guān)系模式如下:FIRST (Sno ,Sname,Status,City ,Pno,Qty) 并且有 F SnoSname, SnoStatus,StatusCity , (Sno, Pno)Qty 。具體的關(guān)系如圖 5 l 所示。SnoSnameSta

5、tusCityPnoQtyS1精益20天津P1200S1精益20天津P2300S1精益20天津P3480S2盛錫10北京P2168S2盛錫10北京P3500S3東方紅30北京P1300S3東方紅30北京P2280S4泰達(dá)20上海P2460從圖 5 1 中可以看出,每一個分量都是不可再分的數(shù)據(jù)項,所以是1NF 。但是, 1NF 帶來四個問題:冗余度大:例如每個供應(yīng)者的Sno, Sname, Status, City 要與零件的種類一樣多;(2) 引起修改操作的不一致性:例如供應(yīng)者S1 從“天津”搬到“上海”,若稍不注意,就會使一些數(shù)據(jù)被修改,另一些數(shù)據(jù)沒有被修改,導(dǎo)致數(shù)據(jù)修改的不一致性;插入異常

6、:若某個供應(yīng)者的其它信息未提供時,如“零件號”,則不能進(jìn)行插入操作;(4) 更新異常:若供應(yīng)商S4 的 P2 零件銷售完了,刪除后,在基本關(guān)系FIRST找不到 S4,可S4 又是客觀存在的。正因為上述原因引入了2NF 。2 2NF( 第二范式 )定義若關(guān)系模式R1NF ,且每一個非主屬性完全依賴 于碼,則關(guān)系模式R2NF 。即當(dāng) 1NF 消除了非主屬性對碼的部分函數(shù)依賴,則成為2NF 。例FIRST 關(guān)系中的碼是Sno、Pno,而 SnoStatus,因此非主屬性Status 部分函數(shù)依賴于碼,故非2NF 的。若此時,將FIRST 關(guān)系分解為:FIRSTl(Sno , Sname, Statu

7、s, City)2NFFIRST2(Sno , Pno, Qty)2NF因為 FIRSTl 和 FIRST2中的碼分別為Sno 和 Sno, Pno 每一個非主屬性完全依賴于碼。3 3NF( 第三范式 )定義若關(guān)系模式R(U , F) 中不存在這樣的碼X ,屬性組Y 及非主屬性Z(ZY) 使得XY , (YX)YZ 成立,則關(guān)系模式R3NF 。即當(dāng) 2NF 消除了 非主屬性對碼的傳遞函數(shù)依賴,則成為3NF 。例 FIRSTl 3NF ,因為在分解后的關(guān)系模式FIRSTl 中有:SnoStatus, StatusCity ,存在著非主屬性City 傳遞依賴于碼Sno。4 BCNF( 巴克斯范式

8、);定義若關(guān)系模式R1NF ,若 XY 且 YX 時, X 必含有碼,則關(guān)系模式RBCNF 。即當(dāng) 3NF 消除了主屬性對碼的部分和傳遞函數(shù)依賴,則成為BCNF 。結(jié)論一個滿足BCNF 的關(guān)系模式,應(yīng)有如下性質(zhì):所有非主屬性對每一個碼都是完全函數(shù)依賴;所有非主屬性對每一個不包含它的碼,也是完全函數(shù)依賴;沒有任何屬性完全函數(shù)依賴于非碼的任何一組屬性。(三 )多值依賴1多值依賴定義若關(guān)系模式R(U) 中, X、Y、Z是U 的子集,并且Z U X Y。當(dāng)且僅當(dāng)對R(U)的任何一個關(guān)系r ,給定一對(x , z)值,有一組Y 的值,這組值僅僅決定于x 值而與z 值無關(guān),則稱“Y多值依賴于X ”或“X

9、多值決定Y ”成立。記為:XY。2多值依賴的性質(zhì)多值依賴具有如下六條性質(zhì):(1) 多值依賴具有對稱性。即若XY ,則XZ ,其中Z U XY(2) 多值依賴的傳遞性。即若XY , YZ,則XZ Y函數(shù)依賴可以看成是多值依賴的特殊情況(4)若 XY , XZ,則 XYZ(5)若 XY , XZ,貝, XY Z;(6)若 XY , XZ,則 XZ Y。3 4NF( 第四范式 )定義(4NF) 若關(guān)系模式R1NF ,若對于R 的每個非平凡多值依賴XY 且 YX 時,X必含有碼,則關(guān)系模式R(U , F)4NF 。(四 )函數(shù)依賴的公理系統(tǒng)Armstrong 公理系統(tǒng): 設(shè)關(guān)系模式R(U ,F(xiàn)) ,其

10、中U 為屬性集,F(xiàn) 是U 上的一組函數(shù)依賴,那么有如下推理規(guī)則:(1)A1 自反律:若Y(2)A2 增廣律:若X(3)A3 傳遞律:若XU,則 XY為F所蘊(yùn)涵;Y 為 F 所蘊(yùn)涵,且ZU,則 XZXY,YZ 為 F 所蘊(yùn)涵,則XYZZ 為為 F 所蘊(yùn)涵;F 所蘊(yùn)涵。根據(jù)上述三條推理規(guī)則又可推出下述三條推理規(guī)則:(1)合并規(guī)則:若XY, XZ ,則XYZ為F所蘊(yùn)涵(2)偽傳遞率:若XY, WYZ,則XWZ 為F 所蘊(yùn)涵(3)分解規(guī)則:若XY, ZY ,則XZ 為F 所蘊(yùn)涵。引理:XA: A1 A2 A1成立的充分必要的條件是XAi成立I=1 , 2, 3, k)F( 五 ) 函數(shù)依賴的閉包F+及

11、屬性的閉包X +:1 函數(shù)依賴的閉包定義關(guān)系模式 R(U , F) 中為 F 所邏輯蘊(yùn)含的函數(shù)依賴的全體稱為F 的閉包,記為: F+ 。2 屬性的閉包X+F定義設(shè) F 為屬性集 U 上的一組函數(shù)依賴, XU , A | X X + A 能由 F 根據(jù) ArmstrongF公理導(dǎo)出 ,則稱為屬性集 X 關(guān)于數(shù)依賴集F 的閉包。X+3 求屬性 X 的閉包 X 吉的算法X +FF算法求屬性的閉包X +F輸入X , F輸出X +F步驟令 X (0) =X , i 0(2)求 B, B A |( v)( w)(VWF V X (i)A W)(3)X (i+1) BX (i)判斷 X (i+1) = X

12、(i) 嗎(5)若相等,或X (i)=U ,則 X (i) 為屬性集 X 關(guān)于函數(shù)依賴集F 的閉包。且算法終止(6) 若不相等,則i i+1 ,返回第二步例 1已知關(guān)系模式R(U ,F(xiàn)),UA,B,C,D,E);FAB, DC, BCE, ACB求(AE) +F (AD) +F解求(AE)+X(0)=AEF計算 X (1) : 逐一掃描 F 中的各個函數(shù)依賴,找到左部為A、 E 或 AE 的函數(shù)依賴,得到一個:AB。故有 X (1) =AEB。計算 X (2) :逐一掃描F 中的各個函數(shù)依賴,找到左部為ABE 或 ABE 子集的函數(shù)依賴,因為找不到這樣的函數(shù)依賴,所以,X (1) X (2)

13、。算法終止,(AE) +ABE 。F求 (AD) ;,由上述算法,設(shè) XtO AD計算 X ”:逐一掃描F 中的各個函數(shù)依賴,找到左部為A、 D 或 AD 的函數(shù)依賴,得到兩個: A+B , D-C 函數(shù)依賴。故有XCl : ADUBC 。計算 X n:逐一掃描F 中的各個函數(shù)依賴,找到左部為ADBC 或 ADBC 子集的函數(shù)依賴,得到兩個:BC E , AC B 函數(shù)依賴。故有X 2,: ABCDUE 。所以, X(2 : ABCDE : U ,算法終止,(AD) 吉: ABCDE 。(六 )最小函數(shù)依賴集1等價和覆蓋定義一個關(guān)系模式R(U , F) 上的兩個依賴集F 和 G,如果F G ,

14、則稱F 和 G 是等價的,記做F 三 G 。若 F 三 G ,則稱 G 是 F 的一個覆蓋,反之亦然。兩個等價的函數(shù)依賴集在表達(dá)能力上是完全相同的。2最小函數(shù)依賴集定義如果函數(shù)依賴集F 滿足下列條件,則稱F 為最小函數(shù)依賴集或最小覆蓋。;(1)F 中的任何一個函數(shù)依賴的右部僅含有一個屬性;”(2)F 中不存在這樣一個函數(shù)依賴X A ,使得F 與 F 一 X A等價;擴(kuò)(3)F 中不存在這樣一個函數(shù)依賴X A,X 有真子集Z 使得F 一 X AUZ+A 與 F 等價。; 3計算最小函數(shù)依賴集的算法。算法計算最小函數(shù)依賴集。輸入一個函數(shù)依賴集輸出F 的一個等價的最小函數(shù)依賴集G。步驟(1) 用分解

15、的規(guī)則,使F 中的任何一個函數(shù)依賴的右部僅含有一個屬性;,:(2) 去掉多余的函數(shù)依賴: 從第一個函數(shù)依賴X+Y 開始將其從F 中去掉, 然在剩下的函數(shù)依賴中求X 的閉包X ,看X是否包含Y ,若是,則去掉X Y ;否則不能去掉,依次做下去。直到拽不到冗余的函數(shù)依賴;去掉各依賴左部多余的屬性。一個一個地檢查函數(shù)依賴宏部非單個屬性的依賴。例如XY+A ,若要判Y 為多余的,則以醑+A 代替 XY+A 是否等價 ?若 AE(X) ,則 Y 是多余屬性,可以去掉。例 2已知關(guān)系模式R(U ,F(xiàn)) , UA,B, C,D,E,G ;江FAB+C ,DEG , CA,BE+C 擴(kuò)BC D,CG BD ,

16、ACD-B ,CE AG ; 請將 F 化為最小函數(shù)依賴集。; 解此題可以有兩種求解方法,求解過程如下: 輩方法 1(利用算法求解, 使得其滿足三個條件); (1)利用分解規(guī)則,將所有的函數(shù)依賴變成右邊都是單個屬:性的函數(shù)依賴,得F 為:FABC,D+E ,D+G ,CA,BECBCD,CG B,CGD,ACD B,CE+A , CE G(2) 去掉 F 中多余的函數(shù)依賴,具體做法如下:從第一個函數(shù)依賴開始從F 中去掉它 (假定它為 X Y) ,剩下的函數(shù)依賴F求X 的閉包,看X 是否含Y ,若包含Y ,則 X+Y 為冗余函數(shù)依賴,則去掉它,否則不去。依次下去,直到能滿足定義最小依賴的第二個條

17、件。故有:設(shè) AB C 為冗余的函數(shù)依賴,則去掉AB+C 得F1D+E ,D G,C+A ,BE CBC+D ,CGB,CG D,ACD+B ,CE A , CE+G因為從 Fl 中找不到找到左部為AB 或 AB 子集的函數(shù)依賴,則(AB) 擊。所以 AB+C 非冗余的函數(shù)依賴,不能去掉。設(shè) CG B 為冗余的函數(shù)依賴,則去掉CG B 得F2AB+C ,DE,D+G ,C+A ,BECBC+D , CG+D , ACD+B ,CE A , CE+G求 (CG) 左設(shè) X*) :CG計算 X ”:逐一掃描 F2中的各個函數(shù)依賴,找到左部為C 、 (;或 CG 的函數(shù)依賴,得到一個: C A 函數(shù)

18、依賴。故有X“ CGA 。計算 X “:逐一掃描 F2 中的各個函數(shù)依賴,找到左部為CGA 或 CGA 子集的函數(shù)依賴,得到一個: CG+D 函數(shù)依賴。故有X 9 ACDG 。:計算 X “:逐一掃描F2 中的各個函數(shù)依賴,找到左部為AC 拓或 ACDG 子集的函數(shù)依賴,得到兩個: ACD B, D , E 函數(shù)依瓤故有XCa)2ABCDEG。;:扭因為 X ABCDEG ; U ,算法終止, (CG) 占 ABCDE 。所以 CG B 為冗余的函數(shù)依賴,從F2中去掉。:設(shè) CG+D 為冗余的函數(shù)依賴,則去掉CG D 得;捍F3 AB+C , D-*E ,D+G , C-,-A , BE CB

19、C+D , ACD-B , CE A , CE+G :求 (CG) 占; 設(shè) XCO) : CG :計算 Xm :逐一掃描 F3 中的各個函數(shù)依賴,找到左部為C、 G 城 CG 的函數(shù)依賴,得到一個:C+A 函數(shù)依賴。故有 Xu :; ACG 。熟 計算 X ”:逐一掃描F3 中的各個函數(shù)依賴,找到左部為ACG誠ACG 子集的函數(shù)依賴,周為找不到這樣的函數(shù)依賴。故有謹(jǐn)X ”,算法終止。(CG)占 ACG 。:因為 ACG 芒 D ,所以 CG+D 非冗余的函數(shù)依賴,不能從F3 沖去掉。 ;設(shè) CE+A 為冗余的函數(shù)依賴,則去掉CE A 得瞰F4 AB-*C, D-E , D-*G , C+A

20、, BE C;BC-*-D , CG D , ACD-B , CE+G) :求 (CZ) 擊; 設(shè) X(O : CE 芝計算 X-) :逐一掃描 F4 中的各個函數(shù)依賴,找到左部為C 、 E 藏 CE 的函數(shù)依賴,得到一個:CA 函數(shù)依賴。故有: X(1 5ACE 。 計算XC2) :逐一掃描 F4中的各個函數(shù)依賴,找到左部為ACE ;藏 ACE 子集的函數(shù)依賴,得到一個:CE G 函數(shù)依賴。故有:騷X 2)ACEG 。計算 X ”:逐一掃描F4 中的各個函數(shù)依賴,找到左部為ACEG 或 ACEG 子集的函數(shù)依賴,得到一個:CG D 函數(shù)依賴。故有:X ACDEG 。計算 X “:逐一掃描F4

21、 中的各個函數(shù)依賴,找到左部為AC DEG 或 ACDEG子集的函數(shù)依賴,得到一個:ACD B 函數(shù)依賴。故有:X ABCDEG 。因為 X “ ABCDEG U ,算法終止,(CE) 占: ABCDEG 。所以 CE+A 為冗余的函數(shù)依賴,從F4中去掉。又因為 F4 中無多余函數(shù)依賴所以轉(zhuǎn)(3)。去掉 F4 中各函數(shù)依賴左邊多余的屬性。函數(shù)依賴ACD+B ,屬性A 是多余的,去掉A 得 CD B,因為 C A,所以可推導(dǎo)出 ACD B。故最小函數(shù)依賴集為:FMIN AB+C ,DE,D+G , C A,BE CBC+D ,CGD,CD+B ,CE G方法 2(利用 Armstrong 公理系

22、統(tǒng)的推理規(guī)則求解 )假設(shè) CG B 為冗余的函數(shù)依賴,那么,從F 中去掉它后能根據(jù) Armstrong 公理系統(tǒng)的推理規(guī)則導(dǎo)出。因為CG+D CA (已知 )所以CGA ACD (增廣律 )因為ACD B(已知 )所以CGA B(傳遞律 )因為CA (已知 )所以CG B(蘊(yùn)涵 )同理可證:CE A 是冗余的。又因C A , CD B 可知, ACD-B L故去掉左邊多余的屬性得CD-B 。需要注意的是,F(xiàn) 的最小依賴集FMIN不一定是惟一的,它與對各函數(shù)依賴FDi 及 X A 中X 各屬性的處理順序有關(guān)。例 3已知關(guān)系模式R(U ,F(xiàn)),UA ,B,C ;FA+B ,BA,B+C,A+C ,

23、 CA求最小函數(shù)依賴集。分析此題可以有兩種不同的答案,下面分別敘述如下。答案 1設(shè) B A 是冗余的,將其從F 中去掉,看能否根據(jù),Armstrong 公理系統(tǒng)的推理規(guī)則導(dǎo)出。因B-C ,CA(已知 )故B A(傳遞律 )故 B-,-A 是冗余的,將其從F 中去掉,得n 為F1 : A+B , B-C , A+C , C+A 。又設(shè) A C 為冗余,將其從F1 中去掉因AB,B-C(已知 )故AC(傳遞律 )故 A+C 是冗余的,將其從n 中去掉,得Fm 為:FM , A B,B+C ,G+A 。因為在 FM ,中的其它函數(shù)依賴是非冗余的,所以,F(xiàn)Ml 為最小函數(shù)依賴集。答案 2設(shè) B C 是

24、冗余的,將其從F 中去掉,看能否根據(jù)、Armstrong 公理系統(tǒng)的推理規(guī)則導(dǎo)出。:因B A, A+C(已知 )故B C(傳遞律 )故 B+C 是冗余的,將其從F 中去掉,得FM2 為FM2 A B,B+C ,A C ,C A。:i因為在Fm 中的其它函數(shù)依賴是非冗余的,所以,F(xiàn)M2 為最小函數(shù)依賴集。從上分析我們可以得到兩個最小函數(shù)依賴集Fh4 ,和 Fht 。,因此, F 的最小函數(shù)依賴集不是惟一的。(七 )模式分解1分解定義(分解 )關(guān)系模式R(U , F) 的一個分解是指,P Rl(Ul , P1), R2(U2 , F2) , R 。 (U 。, F。 ) ,其中:nU UU ,并且

25、沒有U(U , 1 i, j n, E 是 F 在 U 上的投影。其中 Fi X YX YEF 八 XY 三 Ui對一個給定的模式進(jìn)行分解,使得分解后的模式是否與原來的模式等價有三種情況:分解具有無損連接性;分解要保持函數(shù)依賴;分解既要無損連接性;又要保持函數(shù)依賴。2無損連接定義 (無損連接 )P R , (U1 , F: ), R : (U:, F2) , Rh(Uk , Fk) 是關(guān)系模式 R(U , F) 的一個分解, 若對 R(U ,F(xiàn)) 的任何一個關(guān)系 r 均有 r mP(r) 成立,則成分解 P 具有無損連接性 (簡稱無損分解)。k其中, mP(r) :岡丌 R : (r) 。定理

26、關(guān)系模式R(U , F) 的一個分解,P R1(U :, F1) , R:(U2 , F : )具有無損連接的充分必要的條件是:Ul 門 U2 一 Ul U2EF 或Ul 門 U2+U2 一 UlEF 3保持函數(shù)依賴定義:設(shè)關(guān)系模式R(U , F) 的一個分解,P 民 (U :, F1) , R:咖 2,F(xiàn)2) ,Rk(Uk ,Pk) ,如果:F (U 丌 Ki(F1-) ,則稱分解P 保持函數(shù)依賴。 十4判別一個分解的無損連4i-1 和保持函數(shù)依賴的算法;算法1判別一個分解的無損連接性。廣pRl(U :, F1), R。 (U2 ,F(xiàn):),凡 (UL ,F(xiàn)b) 是關(guān)系模式R: (U ,F(xiàn))

27、的一個分解,U :A1 , A :, A 。 , F FDl , FD2 ,: FDp ,并設(shè) F 是一個最小依賴集,記FDi 為戈一 Au ,其步驟如下:(1) 建立一張n 列 k 行的表,每一列對應(yīng)一個屬性,每一行對:應(yīng)分解中的一個關(guān)系模式。若屬性八仨U ,則在j 列 i 行上填上鈣,否則填上、b芝(2) 對于每一個 FDi 做如下操作:找到Xi 所對應(yīng)的列中具有:;相同符號的那些行??疾爝@些行中1i 列的元素,若其中有,則全;都改為,否則全部改為bmli ,m 是這些行的行號最小值。i,如果在某次更改后,有一行成為:a1, a2, an,則算法終止。:且分解p 具有無損連接性,否則不具有

28、無損連接性。:,對 F 中 p 個 FD 逐一進(jìn)行一次這樣的處理,稱為對F 的一次;掃描。:;:(3)比較掃描前后,表有無變化,如有變化,則返回第(2) 步,:否則算法終止。斗 如果發(fā)生循環(huán),那么前次掃描至少應(yīng)使該表減少一個符號,表:中符號有限,因此,循環(huán)必然終止。:算法 2轉(zhuǎn)換成3NF 的保持函數(shù)依賴的分解。孓p R1(U :, F1) , R : (U :,F(xiàn): ), Rk(Uk , Fk) 是關(guān)系模式R:囊 U, F) 的一個分解,U: A :, A :, An , FFDl ,F(xiàn)D2 ,: FD , ,并設(shè) F 是一個最小依賴集,記FDi 為咒一,其步驟如下:;(1)對 R(U , F

29、) 的函數(shù)依賴集F 進(jìn)行極小化處理(處理后的:結(jié)果仍記為F) ; i找出不在 F 中出現(xiàn)的屬性,將這樣的屬性構(gòu)成一個關(guān)系模式。把這些屬性從U 中去掉,剩余的屬性仍記為U ;若有 X A 正 F,且 XA U,則 P R ,算法終止;(4) 否則,對F 按具有相同左部的原則分組(假定分為k 組 ),每一組函數(shù)依賴Fi 所涉及的全部屬性形成一個屬性集U 。若 U三 U(ire 就去掉U。由于經(jīng)過了步驟(2) ,故U U9 ,于是 P R , (Ul, F1) , R2(U2 , F2) , Rk(Uk ,F(xiàn)k) 構(gòu)成 R(U , F) 的一個保持函數(shù)依賴的分解。并且,每個Ri(Ui , E) 均屬

30、于 3NF 且保持函數(shù)依賴。例 4 關(guān)系模式 R(U ,F(xiàn)),其中 UC, T, H,I,S, G),F(xiàn)CSG, C+T ,TH I ,HI C,HS I ,將其分解成3NF 并保持函數(shù)依賴。解 根據(jù)算法 2 求解如下:(1)F 已為最小函數(shù)依賴集;(2)R 中的所有屬性均在F 中都出現(xiàn),所以轉(zhuǎn)(3) ;對 F 按具有相同左部的原則分為:R1 CSG , R2 ; CT , R3: THI , R4 : HIC ,R5 : HSR 。所以 P R1(CSG) , R2(CT) , R3(THl) , R4(HIC) , R5 (HSR)算法 3將一個關(guān)系模式轉(zhuǎn)換成3NF ,使它既具有無損連接又

31、保持函數(shù)依賴的分解。輸入關(guān)系模式R 和 R 的最小函數(shù)依賴集F。輸出R(U ,F(xiàn)) 的一個分解P R1(U ,F(xiàn)1) ,R:(U :,F(xiàn):), Rk(Uk ,F(xiàn)k) ,民為 3NF ,且 P 具有無損連接又保持函數(shù)依賴的分解。操作步驟如下:(1) 根據(jù)算法2 求出保持依賴的分解P R1 , R 。, R 。 ii(2) 判分解P 是否具有無損連接性,若有,轉(zhuǎn)(4) ;惑;、(3) 令 ppUX) ,其中 X 是 R 的候選關(guān)鍵字; 牡知(4)輸出 P 孫。 例 5對例 4 的關(guān)系模式R(U ,F(xiàn)) 將其分解成3NF ,使 P 具有嘎?lián)p連接又保持函數(shù)依賴的分解。弘,解根據(jù)算法3 求解如下:扒(1

32、) 據(jù)例 4 得3NF 保持函數(shù)依賴的分解如下:杠。二 RI(CSG) ,R2(CT) ,R3(THl) ,R4(HIC) ,R5(HSR) (2)根據(jù)算法1 構(gòu)造一個二維矩陣如圖5 2 所示。;:根據(jù) F 中的 C T,對上表進(jìn)行處理,由于屬性列C 上第一;行、第二行及第四行相同a,所以將屬性列T 上 b12、 b 2 改為同一:符號a:。又根據(jù)HI C 將屬性列C 上 b“、bsl 改為同一符號a1;修改后如圖5 3 所示。根據(jù) F 中的 CS G,對上表進(jìn)行處理,由于屬性列CS 上第一行、第五行相同al、 a5,所以將屬性列G 上 b,。改為同一符號a6。又根據(jù)C T 將屬性列T上 b。

33、:改為同一符號a2,修改后如圖5 4 所示。從上可見,找到一行(第 5 行 )為全 a,所以分解是無損的。算法 4將關(guān)系模式轉(zhuǎn)換成BCNF ,使它具有無損連接的分解。輸入關(guān)系模式R 和函數(shù)依賴集F。輸出R(U ,F(xiàn)) 的一個分解PR,(U ,F(xiàn)1) ,R。(U2 ,F(xiàn):),Rk(Uk ,F(xiàn)k) ,民為 BCNF ,且 P 具有無損連接的分解。操作步驟如下:(1) 令 P R(2)若 P 中的所有模式都是BCNF ,則轉(zhuǎn) (4);(3)若 P 中有一個關(guān)系模式民不是BCNF ,則民中必能找到一個函數(shù)依賴X A,且 X 不是民的候選鍵,且A 不屬于X ,設(shè)Rn(XA) , Ri2( 民一 A) ,

34、用分解 民, Rn 代替民,轉(zhuǎn)(2);輸出 F;例 6 關(guān)系模式 R(U ,F(xiàn))其中: U: C,T,H ,I,S,G,F(xiàn) 二 CSC,CT,TH I ,HI+C , HS I ,將其無損連接地分解成BCNF 。解 R 上只有一個候選關(guān)鍵字HS(1)令 P R(U , F)l: (2)p中不是所有的模式都是BCNF ,轉(zhuǎn) (3) ; R 扭;(3) 考慮 CS G,這個函數(shù)依賴不滿足BCNF條件 (CS不包蒙禽候選鍵HS) ,所以將其分解成Ri(CSG) 、R2(CTHIS) 。計算法 1 和 R2 的最小函數(shù)依賴集分別為:Fl CS G ,F(xiàn)2 C 一黔 T ,TH I ,HI C, HS

35、I 。 R2 的候選關(guān)鍵字為HS 。默因R1 已是 BCNF ,而 R2 的 F2 中存在不為碼的決定因睽素HIC駐 故R2 不屬于 BCNF ,進(jìn)一步分解R2 即可。愛:分解R2:考慮 C T,將其分解成R21(CT)、R22(CHIS)。計6 薯 R21 和 R22 的最小函數(shù)依賴集分別為:F21 C T , F22 : CH+I, HI+C , HS+I , C T , TH 一 1,在F22 中,有 CH 一心。 R22 的候選關(guān)鍵字為HS 。整因R21 已是 BCNF ,R22不是 BCNF 熙故進(jìn)一步分解 R22 即可。默分解 R22 :考慮 CH 一 1,將其分解成 R221(C

36、Hl) 、R222 扭 CHS) 。計算 R221 和 R222 的最小函數(shù)依賴集分別為:盼醞F221 CH I,HI C韉 R:F222:HS+C 。 ir 戴因R221 ,R222 已是 BCNF 磬故將 R 分解后為:芝p R1(CSG) ,R21(CT) ,R221(CHl) ,R222(CHS) 醛算法 5將關(guān)系模式分解成4NF ,使它具有無損連接性。醞輸入 關(guān)系模式 R 和函數(shù)依賴集F。黔輸出R(U ,F(xiàn)) 的一個分解P Rl(U ,F(xiàn)1) ,R2(U :,F(xiàn)2) , F? ”,Rk(U ,F(xiàn)k) ,民為 4NF ,且 P 具有無損連接的分解。臥操作步驟如下: 芝(1)令 P R(

37、2) 若 P 中的所有模式都是4NF ,則轉(zhuǎn) (4) ;若 P 中有一個關(guān)系模式民不是 4NF ,則 Ri 中必能找到一個函數(shù)依賴含民的候選鍵,且 A X 乒中, XA ;i 民令 Z A X ,由分解規(guī)則得出X一一A,且X不包 X 一一 Z。令 R。(XZ) ,Ri2( 民一 Z) ,用分解 , F A B),如下的兩個分解:(1)F1 AB , BC(2)p : AB , AC 判這兩個分解是否無損。解 (1)根據(jù)定理判斷本題因 AB 門 BCB ABBCABCABC故 BA茫FB+C 爭 F故 P,為有損連接。(2) 根據(jù)定理判斷本題因 AB門AC二A ABAC BACABC故 AB正F

38、B+C F芝故 p:為無損連接。豁例 5 2對給定的關(guān)系模式R(U , F) , U A , B, C , D, E ,F(xiàn) 山 A C, B C , C D, DE C,CE A ,如下的分解:;p R: (AD) ,R2(AB) ,R :(BE) , R: (CDE) , Rs(AE) 捌分解P 是否無損。豪解(1) 構(gòu)造一個初始的二維表如圖5 5所示。攔臻(2) 根據(jù) A+C ,對上表進(jìn)行處理,由于屬性列A 上第一行、汝二行及第三行相同a,所以將屬性列C 上 b,、 b:,、 b53 改為同一瓢細(xì)號b13,取行號最小值。又根據(jù)B C 將屬性列C 上 b、 b 北改為粗闌一符號b13,修改后

39、的表如圖5 6 所示。牡(3) 根據(jù) C+D ,對上表進(jìn)行處理, 由于屬性列C 上第一行第野仁行、第三行及第五行相同b,且屬性列D 上第一行為a,所以將R洄性列D 上 b:,、 b,:、 b:,改為同一符號a:,修改后的表如圖5 7 渤示。苣團(tuán)O(4) 根據(jù) DE+C ,將屬性列C 上第三行及第五行改為同一符號a,修改后的表如圖5 8 所示。田 OO根據(jù) CE+A ,將屬性列 A 上第三行及第四行改為同一符號 al,修改后的表如圖 5 9 所示。通過上述更改,使第三行成為:a1, a:, a, a4, a。,則算法終止。且分解P 具有無損連接性。例 53對給定的關(guān)系模式R(U ,F(xiàn)),UA,B

40、, C,D,E,尸通過上述更改,使第三行成為:a1, a:, a, a4, a。,則算法終止。且分解P 具有無損連接性。例 53對給定的關(guān)系模式R(U ,F(xiàn)),UA,B,C,D,E,尸軋 F;AB,CP,EA, CE D ,如下的分解:感p R1(ABE) , R2(CDEP)甄。: (1)求 R 的候選關(guān)鍵字,并判分解 p 是否無損;掃; (2)R1 、 R :屬于幾范式。瓤解(1) 候選關(guān)鍵字為CE筻因(CE) U 6;十故有 CE+U ,并且在 CE 中不存在一個真子集能決定R 抽全體屬性U,故 CE為R的候選關(guān)鍵字。薩:根據(jù)定理判斷本題分解P 是否無損舉因ABE 門 CDEP E 2

41、:;蔑“ABE CDEP AB 醛 磬CDEP ABE : CDP良因E+A , A+B(已知 )莨故有 E+B(傳遞律 )寥“因E+A ,EB 豪故有 E+AB(合并律 )封: 因E+ABEF 臥:故故 P 為無損連接。甄(2)R1 、 R :屬于幾范式 ?踩: R1E2NF騷;因 E A, A+B 良故E B,存在傳遞依賴野故 R1任 3NF 薩 R:仨 1NF 皂因CE+D ,C+P 瑟故CE 能惟一地確定R:中的每一個元組,故為候選關(guān)漠字。醛因CE 是候選關(guān)鍵字,而C P,所以 P 部分函數(shù)依賴良與 CE故 R2手2NF例 54對給定的關(guān)系模式R(U ,F(xiàn)),UA,B,C,D,E,P

42、,F(xiàn)AB,CP,EA, CE+D ,如下的分解:p R1(CP) , R :(BE) ,R3(ECD) ,R: (AB) ,判分解P 是否無損。解(1)構(gòu)造一個初始的二維表如圖5 10 所示。(2) 根據(jù) A B,對上表進(jìn)行處理,由于屬性列A 上無相同元素,所以不能修改表。又根據(jù)C P 將屬性列P 上 b:,改為a,修改后的表如圖5 11 所示。(3) 根據(jù) E A,對上表進(jìn)行處理,由于屬性列E 上第二行、第三行相同a5,所以將屬性列A上 b:,、 L 改為同一符號b:,修改后的表如圖5 12 所示。;(4) 根據(jù) CE D ,對上表進(jìn)行處理,無法修改上表。因此,在輾后的表格,找不到一行全為a

43、l, a:, an,所以P 是有損的。:例 5 5試證明由Armstrong 公理系統(tǒng)推導(dǎo)出下面三條推理規(guī)則是正確的:l(1) 合并規(guī)則:若X Z, X Y ,則有 X YZ偽傳遞規(guī)則:若 X Y , WY Z,則有 XW Z(3) 分解規(guī)則:若XY,Z 任 Y,則有 X 一 2證明(1)合并規(guī)則:因X Y(已知 )器故XXY (增廣律 )因X Z(已知 )故XY YZ(增廣律 ):因XXY ,XY YZ(從上面得知 )故XYZ(傳遞律 ) (2) 偽傳遞規(guī)則:,因X+Y(已知 )故WX WY(增廣律 )因 WYZ (已知)故XW 一 2(傳遞律 )(3)分解規(guī)則:因 Z(Y(已知 )故Y Z

44、(自反律 )因X Y(已知 )故X Z(傳遞律 )例 3-6關(guān)系 R(A ,B,C, D,E,F(xiàn),G ,H ,I ,J)滿足下列函數(shù)依賴:ABD+E , AB G, B F, C 一工, CJ I , G+H該函數(shù)依賴集是最小函數(shù)依賴集嗎?給出該關(guān)系的候選碼。解 該函數(shù)依賴集不是最小函數(shù)依賴集。因 CJ,CJI (已知 )故 CJ (邏輯蘊(yùn)涵 )顯然, ABCDGJ 是一個超碼,即所有出現(xiàn)在函數(shù)依賴左邊的屬性的集合是超碼。但是因CJ(已知 )故 可將 J 從超碼中去掉。因ABG(已知 )故 可將 G 從超碼中去掉。此時,超碼中只剩下ABCD ,由于它們都沒有在函數(shù)依賴集的任何一個函數(shù)依賴的右邊

45、出現(xiàn),所以它們都不能從超碼中去掉。故候選碼為:ABCD 。所謂超碼是指能惟一標(biāo)識關(guān)系中的每一個元組,不含多余屬性的才是候選關(guān)鍵字(或候選碼 )。例 3 7設(shè) P R1(U1 , F1) , R2(U2 , F2) 是 R(U , F) 上的一個分解,試證明P 具有無損連接的充分必要的條件是:U1 門 U :一 Ul U2 仨 F或 Ul 門 Uz U2 一 Ul 仨 F。證明(1)充分性:設(shè)U、門 Uz-U :一 U :,則可構(gòu)造表如圖5 13 所示。該圖省略了a、b 的下標(biāo)。如果 U ,門 U2+U ,一 U2 在 F 中,則可將表的第二行U ,一 U :瀚韻所有符號全改為aaa a,使得該

46、表的第二行全為a,則 P 具有海損連接性。同理可證U 、門 U: +U :一 U:的情況。如果Ul 門 U2 知:一U :不在 F 中,但在F中,那么,它可以從Armstrong 公理纂統(tǒng)的推理規(guī)則導(dǎo)出,從而也能推出Ul 門 U2 一九,且Ai 三 U1 一巍中,所以可以將九列的b 改為 a,同樣,可將Ul U2 的其它屬醛對應(yīng)的第二行也全改為a,這樣,第二行就變成全a,所以分解是凜有無損連接性。臥(2)必要性:設(shè)構(gòu)造的表中有一行全為a,例如第一行全為a湘由函數(shù)依賴的定義可知U:門 U :一 U :一Ul ;如第二行全為a,則油函數(shù)依賴的定義可知U ,門 U2+Ul U2 。黔例 5 8試證明

47、由關(guān)系模式中全部屬性組成的集合為候選拱鍵字的關(guān)系是3NF ,同 時 也 是BCNF 。證明由于關(guān)系模式中的全部屬性組成的集合為候選關(guān)鍵障,該關(guān)系中沒有非主屬性,滿足R 屬于 3NF 的條件,即每個非主幽性即不函數(shù)依賴候選關(guān)鍵字,也不傳遞依賴于候選關(guān)鍵字。醛又因為它沒有非候選關(guān)鍵字的屬性,也滿足BCNF 的三個降件:F(1) 所有非主屬性對每個候選關(guān)鍵字都完全函數(shù)依賴;苣(2)沒有任何屬性都完全函數(shù)依賴于非候選關(guān)鍵字的任一組61 性;因為它只是一個候選關(guān)鍵字,所以又滿足BCNF 的另一個陋伍(3)所有的主屬性對每一個不包含它的候選關(guān)鍵字也是完全函數(shù)依賴。例 5 9試證明一個關(guān)系模式R 是 BCN

48、F ,那么它一定是3NF 。證明采用反證法。設(shè)關(guān)系模式R 是 BCNF ,不是3NF 的,則必存在非主屬性A 和候選關(guān)鍵字X 以及屬性組Y ,使得:X , Y , Y+A ,其中A+X , A Y , Y+X不屬于F,這就是說Y 不可能包含R 的候選關(guān)鍵字,但 Y A 卻成立。 根據(jù) BCNF 定義, R 不是 BCNF ,與題設(shè)矛盾, 所以一個BCNF 必是 3NF的。例 5 10關(guān)系 R(A , B, C , D, E) 滿足下列函數(shù)依賴:FA C,C D,BC,DE C,CE A給出關(guān)系 R 的候選關(guān)鍵字;判 P AD , AB , BC, CDE , AE 是否無損連接分解;將 R 分

49、解為 BCNF ,并具有無損連接性。解(1)從函數(shù)依賴集F 中看,候選關(guān)鍵字至少包含BE ,因為BE 不依賴于誰,而(BE) ABCDE ,所以, BE 是 R 的候選關(guān)鍵字。(2) 構(gòu)造一個二維表,如圖5 14 所示。根據(jù)A+C ,對上表進(jìn)行處理,由于屬性列A 上第 1, 2, 5 行相同,但屬性列C 上對應(yīng)的1, 2, 5 行上無ai 元素,所以,只能將b13b: bs,改為行號最小值b130 又根據(jù)C D 將屬性列 D 上 b改為 a:,修改后的表如圖5 15 所示。臣b lb 擴(kuò)根據(jù)B C,對上表進(jìn)行處理,由于屬性列B 上第 2, 3 行相湘,但屬性列C 上對應(yīng)的3 行為 a:元素,所

50、以,只能將第2 行 b13 改洳 a3。又根據(jù)DE C ,CE A 不能修改此表所以修改后的表如卜 i 聲 5 16 所示。摹”?!保焊鶕?jù)A C,對上表進(jìn)行處理,由于屬性列A 上第 1, 2, 5 府相同,但屬性列C 上對應(yīng)的1, 2, 5 行上有a3 元素,所以,只能將藻1, 5 行 b13 改為 a3。又根據(jù)C+D 將屬性列D 上 b2 bs:改為a4,:修改后的表如圖5 17 所示。根據(jù) CE+A ,對上表進(jìn)行處理,由于屬性列CE 上第 4,5 行相伺,但屬性列A 上對應(yīng)的5行為 al 元素,所以,將第4 行 b41 改為 a,。修改后的表如圖5 18 所示。繼續(xù)掃描F 不能修改此表,由

51、于找不到一行全為a,所以該分解是有損的。(3) 考慮 A C ,因為AC 不包含候選關(guān)鍵字,所以AC 不是BCNF ,故將ABCDE 分解為兩個子模式R1(AC)R2(ABDE)。此時, R1 正 BCNF 。,繼續(xù)分解R2 ,考慮 B D ,將 ABDE 分解為兩個子模式R21 (BD)R22(ABE),此時, R21 和R22 均屬于BCNF 。所以R 分解為 BCNF ,并具有無損連接性的分解如下:P AC , BD, ABE三、習(xí)題一、選擇題L 設(shè)學(xué)生關(guān)系模式為:學(xué)生(學(xué)號,姓名,年齡,性別,成績,專業(yè)),則該關(guān)系模式的主鍵是()。A姓名B學(xué)號,姓名C 學(xué)號 D 學(xué)號,姓名年齡搬2設(shè)關(guān)

52、系模式R(U , F) , U 為 R 的屬性集合, F 為 U 上的一種函數(shù)依甑,則對R(U , F)而言,如果 X Y 為 F 所蘊(yùn)涵,且 Z 巨 U,則 XZ YZ 為 F 所酶硒。這是函數(shù)依賴的()。筍 A傳遞律U合并規(guī)則巴自反律D增廣律瓤3X 一九成立是X A1A2 Ah 成立的 ( )。終久充分條件D必要條件隨C 充要條件D 既不充分也不必要蒺4設(shè)一關(guān)系模式為:運(yùn)貨路徑 (顧客姓名,顧客地址,商品名,供應(yīng)商姓輻,供應(yīng)商地址),則該關(guān)系模式的主鍵是 ()。女兒顧客姓名,供應(yīng)商姓名-冪B B 顧客姓名,商品名軋巴顧客姓名,商品名,供應(yīng)商姓名乏D顧客姓名,顧客地址,商品名醛5設(shè)有關(guān)系模式

53、R(U ,F(xiàn)), U 是 R 的屬性集合, X, Y 是 U 的子集,則多灌函數(shù)依賴的傳遞律為()。薩 A 如果 X+Y ,且 Y Z ,則 X Z 小 h:,薩B如果 X一 +Y , Y+ 一 Z,則 X+(Z Y) 粒豪C如果 X 一+Y ,則 X一+(U YX)鏟D 如果 X+一 Y,VOW ,則 WX一 +VY嚴(yán) 6下列有關(guān)范式的敘述中正確的是( )。瓤A 如果關(guān)系模式 RElNF ,且 R 中主屬性完全函數(shù)依賴于主鍵,則R遵2NF蜂B如果關(guān)系模式RE3NF ,X,YOU ,若 X+Y ,則 R 是 BCNF C 如果關(guān)系模式REBCNF ,若 X+ 一 Y(Y篡 X) 是平凡的多值依

54、賴,簿斕R是4NF芝D 一個關(guān)系模式如果屬于4NF ,則一定屬于BCNF ;反之不成立釃7關(guān)系模式學(xué)生(學(xué)號,課程號,名次),若每一名學(xué)生每門課程有一定輛名次,每門課程每一名次只有一名學(xué)生,則以下敘述中錯誤的是()。牲A (學(xué)號,課程號 )和 (課程號,名次 )都可以作為候選鍵駐D只有 (學(xué)號,課程號)能作為候選鍵彈巴關(guān)系模式屬于第三范式D 關(guān)系模式屬于BCNF8下列敘述中正確的是()。A若 X+ 一 Y ,其中Z 二 U X+Y :中,則稱X 一一 Y 為非平凡的多疽依賴且若 X ,一 Y ,其中Z: U X Y:中,則稱X 一一 Y 為平凡的多值依賴巴對于函數(shù)依賴A1, A2, An B

55、來說,如果B 是 A 中的某一個,則稱為非平凡函數(shù)依賴D對于函數(shù)依賴A1 , A2 , An B 來說,如果B 是 A 中的某一個,則稱為平凡函數(shù)依賴9能消除多值依賴引起的冗余的是()。A 2NFa 3NFC 4NFa BCNF10下列敘述中正確的是()。丸第三范式不能保持多值依賴D第四范式肯定能保持多值依賴C BC 范式可能保持函數(shù)依賴D第四范式不能保持函數(shù)依賴11下列關(guān)于第四范式的敘述中錯誤的是()。丸第四范式條件實質(zhì)上是BC 范式條件第四范式應(yīng)用與多值依賴如果一個關(guān)系屬于第四范式,則每個非平凡多值依賴實際上就是一個左邊為超鍵碼的函數(shù)依賴D屬于BC 范式的每個關(guān)系都屬于第四范式12以下敘述

56、中正確的是()。久函數(shù)依賴X Y 的有效性僅決定于兩屬性集的值;而多值依賴X 一一 Y 的有效性與屬性集的范圍有關(guān)D函數(shù)依賴X Y與多值依賴X+Y的有效性都決定于兩屬性集的值C 多值依賴X 一一Y 若在R(U)上成立,則對任何Y 三Y都有X 一一Y 成立D對于函數(shù)依賴X Y在R 上成立,不能斷言對任何ycY均有X隘 r 成立醛:13關(guān)系數(shù)據(jù)庫設(shè)計理論中,起核心作用的是()。蘸 A 范式D模式設(shè)計巳數(shù)據(jù)依賴D數(shù)據(jù)完整性醛爵二、填空題躚釅1關(guān)系數(shù)據(jù)庫是以為基礎(chǔ)的數(shù)據(jù)庫,利用細(xì)述現(xiàn)實世界。一個關(guān)系既可以描述,也可以描述攥l+ 扛2在關(guān)系數(shù)據(jù)庫中,二維表稱為一個表的每一行稱為卜:二,表的每一列稱為。芝

57、3數(shù)據(jù)完整性約束分為和兩類。黔4關(guān)系數(shù)據(jù)庫設(shè)計理論,主要包括三個方面內(nèi)容:、:二和。其中起著核心的作用。隘5X-,-Y 是模式 R 的一個函數(shù)依賴,在當(dāng)前值,的兩個不同元組中,如海X 值相同,就一定要求。也就是說,對于x 的每一個具體涕,都有與之對應(yīng)。隘;6設(shè) F 是關(guān)系模式R 的一個函數(shù)依賴集, X ,Y 是 R 的屬性子集,如果熬,則稱 F 邏輯蘊(yùn)涵X Y ,記為。被F 邏輯蘊(yùn)涵 g麴函數(shù)依賴的全體構(gòu)成的集合,稱為,記作。;:7設(shè) U 是關(guān)系模式R 的屬性集, X , Y , Z 是 U 的子集,則: FD 的自反律泌;增廣律是;傳遞律是。函數(shù)依陽推理規(guī)則系統(tǒng)(自反律、增廣律和傳遞律)是的

58、。 芝8關(guān)系模式 R(U) 上的兩個函數(shù)依賴集 F 和予,如果滿足醞,則稱F 和 G 是等價的。芝9每個函數(shù)依賴集F 都可以被的函數(shù)依賴集G 所覆蓋。釀lo將一個關(guān)系模式分解成多個關(guān)系模式時,為了保持原模式所滿足的豪特性要求分解處理具有和11設(shè) R 是一關(guān)系模式,分解成關(guān)系模式P R1 , R2 , Rk , P 是 R 上的一個函數(shù)依賴集,如果對R 中滿足F 的每一個關(guān)系,都有膽,N, j 稱該分解P 相 Z F&“ xN 969”。臣12如果R 的分解為P Rl , R2 , F 為 R 所滿足的函數(shù)依賴集合,分解P 具有無損聯(lián)接性的充分必要條件是或。13,多值依賴的合并律是;偽傳遞律是;

59、分解律是。14對于函數(shù)依賴X Y,如果Y 巨 X,則稱X Y 是一個。15對屬性集U 上的一個多值依賴X+ 一 Y(X , Y 是 U 的子集 ),如果,則稱是一個平凡的多值依賴。16好的模式設(shè)計應(yīng)符合、三條原則。三、問答題1關(guān)系規(guī)范化一般應(yīng)遵循的原則是什么?2多值依賴與函數(shù)依賴有哪些主要的區(qū)別?3低級范式的關(guān)系模式對數(shù)據(jù)存儲和數(shù)據(jù)操作產(chǎn)生的不利影響是什么?4 3NF 與 BCNF 的區(qū)別和聯(lián)系各是什么?5設(shè)一關(guān)系為:學(xué)生(學(xué)號,姓名,年齡,所在系,出生日期),判斷此關(guān)系屬性組屬于第幾范式。為什么?6下面的結(jié)論哪些是正確的?哪些是錯誤的?對于錯誤的請給出一個反例說明之。(1)任何一個二目關(guān)系是

60、屬于3NF 。(2)任何一個二目關(guān)系是屬于BCNF 。(3)任何一個二目關(guān)系是屬于4NF 。(4)當(dāng)且僅當(dāng)函數(shù)依賴A+B 在 R 上成立,關(guān)系R(A , B, C) 等與其投影Rl(A , B)和凡 (A , C)的連接。若 RARB, RB-R C,則民 A-*R C若 RARB, RA+兄 C,則 R A 一民 (B,C)若 RBRA RC+R A,則 R(B, C)一 RA若 R(B,C)一 RA,則 RB-R A,RCRA四、綜合題1對給定的關(guān)系模式 R(U , F), U A , B, C, D) , F: A B, C D , BC臥燦球 P、。膽: 2已知學(xué)生關(guān)系模式S(Sno,

溫馨提示

  • 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論