上機測試(道題目)_第1頁
上機測試(道題目)_第2頁
上機測試(道題目)_第3頁
上機測試(道題目)_第4頁
上機測試(道題目)_第5頁
已閱讀5頁,還剩118頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、1通通 知知 本周日上機,上機時間:本周日上機,上機時間:11:15-14:15,本,本次上機任務:次上機任務:1.上機測試(上機測試(2道題目)。道題目)。2. 交上機實驗報告。交上機實驗報告。2數(shù)據(jù)庫系統(tǒng)概論數(shù)據(jù)庫系統(tǒng)概論An Introduction to Database System第六章第六章 關系數(shù)據(jù)理論關系數(shù)據(jù)理論3第六章第六章 關系數(shù)據(jù)理論關系數(shù)據(jù)理論6.1 問題的提出6.2 規(guī)范化6.3 數(shù)據(jù)依賴的公理系統(tǒng)*6.4 模式的分解6.5 小結46.1 問題的提出問題的提出關系數(shù)據(jù)庫邏輯設計關系數(shù)據(jù)庫邏輯設計: 針對具體問題,如何構造一個適合于它的數(shù)據(jù)模式。針對具體問題,如何構造

2、一個適合于它的數(shù)據(jù)模式。 數(shù)據(jù)庫邏輯設計的工具數(shù)據(jù)庫邏輯設計的工具關系數(shù)據(jù)庫的規(guī)范化理論。關系數(shù)據(jù)庫的規(guī)范化理論。5問題的提出問題的提出一、概念回顧一、概念回顧二、關系模式的形式化定義二、關系模式的形式化定義三、什么是數(shù)據(jù)依賴三、什么是數(shù)據(jù)依賴四、關系模式的簡化定義四、關系模式的簡化定義五、數(shù)據(jù)依賴對關系模式影響五、數(shù)據(jù)依賴對關系模式影響6一、概念回顧一、概念回顧v 關系關系v 關系模式關系模式v 關系數(shù)據(jù)庫關系數(shù)據(jù)庫v 關系數(shù)據(jù)庫的模式關系數(shù)據(jù)庫的模式7二、關系模式的形式化定義二、關系模式的形式化定義關系模式由五部分組成,即它是一個五元組:關系模式由五部分組成,即它是一個五元組: R(U,

3、D, DOM, F)R: 關系名。關系名。U: 組成該關系的屬性名集合。組成該關系的屬性名集合。D: 屬性組屬性組U中屬性所來自的域。中屬性所來自的域。DOM: 屬性向域的映象集合。屬性向域的映象集合。F: 屬性間數(shù)據(jù)的依賴關系集合。屬性間數(shù)據(jù)的依賴關系集合。8三、什么是數(shù)據(jù)依賴三、什么是數(shù)據(jù)依賴1. 完整性約束的表現(xiàn)形式:完整性約束的表現(xiàn)形式:v 限定屬性取值范圍:例如學生成績必須在限定屬性取值范圍:例如學生成績必須在0-100之間。之間。v 定義屬性定義屬性值值間的相互關連(主要體現(xiàn)于值的間的相互關連(主要體現(xiàn)于值的相等與相等與否否),這就是數(shù)據(jù)依賴,它是數(shù)據(jù)庫模式設計的關鍵。),這就是數(shù)

4、據(jù)依賴,它是數(shù)據(jù)庫模式設計的關鍵。9什么是數(shù)據(jù)依賴(續(xù))什么是數(shù)據(jù)依賴(續(xù))2. 數(shù)據(jù)依賴:數(shù)據(jù)依賴:v一個關系內部屬性與屬性之間的約束關系。一個關系內部屬性與屬性之間的約束關系。v現(xiàn)實世界屬性間相互聯(lián)系的抽象?,F(xiàn)實世界屬性間相互聯(lián)系的抽象。v數(shù)據(jù)內在的性質。數(shù)據(jù)內在的性質。v語義語義的體現(xiàn)。的體現(xiàn)。10什么是數(shù)據(jù)依賴(續(xù))什么是數(shù)據(jù)依賴(續(xù))3. 數(shù)據(jù)依賴的類型:數(shù)據(jù)依賴的類型:v 函數(shù)依賴(函數(shù)依賴(Functional Dependency,簡記為,簡記為FD)。)。v 多值依賴(多值依賴(Multivalued Dependency,簡記為,簡記為MVD)。)。v 其他。其他。11四、

5、關系模式的簡化表示四、關系模式的簡化表示v 關系模式關系模式R(U, D, DOM, F)。)。 簡化為一個三元組:簡化為一個三元組: R(U, F)v 當且僅當當且僅當U上的一個關系上的一個關系r滿足滿足F時,時,r稱為稱為關系模式關系模式 R(U, F)的一個)的一個關系。關系。12五、五、數(shù)據(jù)依賴對關系模式的影響數(shù)據(jù)依賴對關系模式的影響例例1建立一個描述學校教務的數(shù)據(jù)庫:建立一個描述學校教務的數(shù)據(jù)庫:學生的學號(學生的學號(Sno)、所在系()、所在系(Sdept)系主任姓名(系主任姓名(Mname)、課程名()、課程名(Cname)成績(成績(Grade)單一單一的關系模式的關系模式

6、: Student U Sno, Sdept, Mname, Cname, Grade 13數(shù)據(jù)依賴對關系模式的影響(續(xù))數(shù)據(jù)依賴對關系模式的影響(續(xù)) 屬性組屬性組U上的一組函數(shù)依賴上的一組函數(shù)依賴F: F Sno Sdept, Sdept Mname, (Sno, Cname) Grade SnoCnameSdeptMnameGrade14關系模式關系模式Student中存在的問題中存在的問題1. 1. 數(shù)據(jù)冗余太大。數(shù)據(jù)冗余太大。2. 2. 更新異常(更新異常(Update AnomaliesUpdate Anomalies)。)。3. 3. 插入異常(插入異常(Insertion An

7、omaliesInsertion Anomalies)。)。4. 4. 刪除異常(刪除異常(Deletion AnomaliesDeletion Anomalies)。)。15數(shù)據(jù)依賴對關系模式的影響(續(xù))數(shù)據(jù)依賴對關系模式的影響(續(xù))結論:結論:nStudent關系模式不是一個好的模式。關系模式不是一個好的模式。n“好好”的模式:的模式:不會發(fā)生插入異常、刪除異常、更新異常,不會發(fā)生插入異常、刪除異常、更新異常,數(shù)據(jù)冗余應盡可能少。數(shù)據(jù)冗余應盡可能少。原因:原因:由存在于模式中的由存在于模式中的某些數(shù)據(jù)依賴某些數(shù)據(jù)依賴引起的。引起的。解決方法:解決方法:通過通過分解分解關系模式來消除其中不合

8、適關系模式來消除其中不合適 的數(shù)據(jù)依賴。的數(shù)據(jù)依賴。16分解關系模式分解關系模式v把這個單一模式分成把這個單一模式分成3個關系模式:個關系模式: S(Sno,Sdept,Sno Sdept); SC(Sno,Cno,Grade,(,(Sno,Cno) Grade); DEPT(Sdept,Mname,Sdept Mname)17第六章第六章 關系數(shù)據(jù)理論關系數(shù)據(jù)理論6.1 問題的提出問題的提出6.2 規(guī)范化規(guī)范化6.3 數(shù)據(jù)依賴的公理系統(tǒng)數(shù)據(jù)依賴的公理系統(tǒng)*6.4 模式的分解模式的分解6.5 小結小結186.2 規(guī)范化規(guī)范化 “規(guī)范化理論規(guī)范化理論”:正是用來改造關系模式,通過分解關系正是用來

9、改造關系模式,通過分解關系模式來消除其中不合適的數(shù)據(jù)依賴,以解決插入異常、刪模式來消除其中不合適的數(shù)據(jù)依賴,以解決插入異常、刪除異常、更新異常和數(shù)據(jù)冗余問題。除異常、更新異常和數(shù)據(jù)冗余問題。196.2 規(guī)范化規(guī)范化6.2.1 函數(shù)依賴函數(shù)依賴6.2.2 碼碼6.2.3 范式范式6.2.4 2NF6.2.5 3NF6.2.6 BCNF6.2.7 多值依賴多值依賴6.2.8 4NF6.2.9 規(guī)范化小結規(guī)范化小結206.2.1 函數(shù)依賴函數(shù)依賴v函數(shù)依賴。函數(shù)依賴。v平凡函數(shù)依賴與非平凡函數(shù)依賴。平凡函數(shù)依賴與非平凡函數(shù)依賴。v完全函數(shù)依賴與部分函數(shù)依賴。完全函數(shù)依賴與部分函數(shù)依賴。v傳遞函數(shù)依賴

10、。傳遞函數(shù)依賴。21一、函數(shù)依賴一、函數(shù)依賴定義6.1 設設R(U)是一個屬性集是一個屬性集U上的關系模式,上的關系模式,X和和Y是是U的的子集。子集。 若對于若對于R(U)的的任意任意一個可能的關系一個可能的關系r,r中不可能存在兩個中不可能存在兩個元組在元組在X上的屬性值相等,上的屬性值相等, 而在而在Y上的屬性值不等,上的屬性值不等, 則稱則稱 “X函數(shù)確定函數(shù)確定Y” 或或 “Y函數(shù)依賴于函數(shù)依賴于X”,記作,記作XY。 2223二、平凡函數(shù)依賴與非平凡函數(shù)依賴二、平凡函數(shù)依賴與非平凡函數(shù)依賴在關系模式在關系模式R(U)中,對于中,對于U的子集的子集X和和Y,如果如果XY,但,但Y X

11、,則稱,則稱XY是非平凡的函數(shù)依賴。是非平凡的函數(shù)依賴。若若XY,但,但Y X, 則稱則稱XY是是平凡的函數(shù)依賴。平凡的函數(shù)依賴。v 例:在關系例:在關系SC(Sno, Cno, Grade)中,中, 非平凡函數(shù)依賴:非平凡函數(shù)依賴: (Sno, Cno) Grade 平凡函數(shù)依賴:平凡函數(shù)依賴: (Sno, Cno) Sno (Sno, Cno) Cno24平凡函數(shù)依賴與非平凡函數(shù)依賴(續(xù))平凡函數(shù)依賴與非平凡函數(shù)依賴(續(xù)) 若若XY,則,則X稱為這個函數(shù)依賴的決定屬性組,也稱為這個函數(shù)依賴的決定屬性組,也稱為決定因素(稱為決定因素(Determinant)。)。 若若XY,YX,則記作,則

12、記作XY。 若若Y不函數(shù)依賴于不函數(shù)依賴于X,則記作,則記作XY。25三、完全函數(shù)依賴與部分函數(shù)依賴三、完全函數(shù)依賴與部分函數(shù)依賴定義6.2 在在R(U)中,如果中,如果XY,并且對于,并且對于X的任何一個真的任何一個真子集子集X,都有,都有X Y, 則稱則稱Y對對X完全函數(shù)依賴完全函數(shù)依賴,記作,記作 X F Y。 若若XY,但,但Y不完全函數(shù)依賴于不完全函數(shù)依賴于X,則稱,則稱Y對對X部分函數(shù)部分函數(shù)依賴依賴,記作,記作X P Y。 26完全函數(shù)依賴與部分函數(shù)依賴(續(xù))完全函數(shù)依賴與部分函數(shù)依賴(續(xù))例例1 中中(Sno,Cno)Grade是完全函數(shù)依賴,是完全函數(shù)依賴, (Sno,Cno

13、)Sdept是部分函數(shù)依賴是部分函數(shù)依賴 因為因為Sno Sdept成立,且成立,且Sno是(是(Sno,Cno)的真子集的真子集 FP27四、傳遞函數(shù)依賴四、傳遞函數(shù)依賴定義6.3 在在R(U)中,如果中,如果XY,(Y X) ,YX YZ, 則稱則稱Z對對X傳遞函數(shù)依賴傳遞函數(shù)依賴。 記為:記為:X Z 注注: 如果如果YX, 即即XY,則,則Z直接依賴于直接依賴于X。例例: 在關系在關系Std(Sno, Sdept, Mname)中,有:中,有: Sno Sdept,Sdept Mname Mname傳遞函數(shù)依賴于傳遞函數(shù)依賴于Sno傳遞286.2 規(guī)范化規(guī)范化6.2.1 函數(shù)依賴6.2

14、.2 碼6.2.3 范式6.2.4 2NF6.2.5 3NF6.2.6 BCNF6.2.7 多值依賴6.2.8 4NF6.2.9 規(guī)范化小結296.2.2 碼碼定義定義6.4 設設K為為R中的屬性或屬性組合。若中的屬性或屬性組合。若K U, 則則K稱為稱為R的的侯選碼侯選碼(Candidate Key)。)。 若候選碼多于一個,則選定其中的一個做為若候選碼多于一個,則選定其中的一個做為主碼主碼(Primary Key)。)。F30碼(續(xù))碼(續(xù))v 主屬性與非主屬性主屬性與非主屬性 : 包含在任何一個候選碼中的屬性包含在任何一個候選碼中的屬性 ,稱為主屬性(,稱為主屬性(Prime attri

15、bute) 。 不包含在任何碼中的屬性稱為非主屬性(不包含在任何碼中的屬性稱為非主屬性(Nonprime attribute)或非碼屬性()或非碼屬性(Non-key attribute) 。v 全碼:全碼: 整個屬性組是碼,稱為全碼(整個屬性組是碼,稱為全碼(All-key) 。31碼(續(xù))碼(續(xù))例例2 關系模式關系模式S(Sno,Sdept,Sage),單個屬性,單個屬性Sno是碼,是碼, SC(Sno,Cno,Grade)中,()中,(Sno,Cno)是碼。)是碼。例例3 關系模式關系模式R(P,W,A) P:演奏者:演奏者 W:作品:作品 A:聽眾:聽眾 一個演奏者可以演奏多個作品。

16、一個演奏者可以演奏多個作品。 某一作品可被多個演奏者演奏。某一作品可被多個演奏者演奏。 聽眾可以欣賞不同演奏者的不同作品。聽眾可以欣賞不同演奏者的不同作品。 碼為碼為(P,W,A),即,即All-Key 。32外部碼外部碼定義6.5 關系模式關系模式 R 中屬性或屬性組中屬性或屬性組X 并非并非 R的碼,但的碼,但 X 是另一個關系模式的碼,則稱是另一個關系模式的碼,則稱 X 是是R 的的外部碼外部碼(Foreign key)也稱外碼。也稱外碼。v 如在如在SC(Sno,Cno,Grade)中,)中,Sno不是碼,但不是碼,但Sno是關系模式是關系模式S(Sno,Sdept,Sage)的碼,則

17、)的碼,則Sno是關系模式是關系模式SC的外部碼的外部碼 。v 主碼與外部碼一起提供了表示關系間聯(lián)系的手段。主碼與外部碼一起提供了表示關系間聯(lián)系的手段。336.2 規(guī)范化規(guī)范化6.2.1 函數(shù)依賴6.2.2 碼6.2.3 范式6.2.4 2NF6.2.5 3NF6.2.6 BCNF6.2.7 多值依賴6.2.8 4NF6.2.9 規(guī)范化小結346.2.3 范式范式v 范式是符合某一種級別的關系模式的集合。范式是符合某一種級別的關系模式的集合。v 關系數(shù)據(jù)庫中的關系必須滿足一定的要求。滿足不同程度關系數(shù)據(jù)庫中的關系必須滿足一定的要求。滿足不同程度要求的為不同范式要求的為不同范式 ( Normal

18、 Formal)。v 范式的種類:范式的種類:第一范式第一范式(1NF)第二范式第二范式(2NF)第三范式第三范式(3NF)BC范式范式(BCNF)第四范式第四范式(4NF)第五范式第五范式(5NF)356.2.3 范式范式v各種范式之間存在聯(lián)系:各種范式之間存在聯(lián)系:v某一關系模式某一關系模式R為第為第n范式,可簡記為范式,可簡記為RnNF。v 一個低一級范式的關系模式,通過一個低一級范式的關系模式,通過模式分解模式分解可以轉換為若可以轉換為若干個高一級范式的關系模式的集合,這種過程就叫干個高一級范式的關系模式的集合,這種過程就叫規(guī)范化。規(guī)范化。 NF5NF4BCNFNF3NF2NF1366

19、.2 規(guī)范化規(guī)范化6.2.1 函數(shù)依賴6.2.2 碼6.2.3 范式6.2.4 2NF6.2.5 3NF6.2.6 BCNF6.2.7 多值依賴6.2.8 4NF6.2.9 規(guī)范化小結376.2.4 2NFv 1NF的定義:的定義:如果一個關系模式如果一個關系模式R的所有屬性都是的所有屬性都是不可分的基本數(shù)據(jù)項不可分的基本數(shù)據(jù)項,則則R1NF。v 第一范式是對關系模式的最起碼的要求。不滿足第一范式第一范式是對關系模式的最起碼的要求。不滿足第一范式的數(shù)據(jù)庫模式不能稱為關系數(shù)據(jù)庫。的數(shù)據(jù)庫模式不能稱為關系數(shù)據(jù)庫。v 但是滿足第一范式的關系模式并不一定是一個好的關系模但是滿足第一范式的關系模式并不一

20、定是一個好的關系模式。式。382NF(續(xù))(續(xù))例例4 關系模式關系模式 S-L-C(Sno, Sdept, Sloc, Cno, Grade) Sloc為學生住處,假設每個系的學生住在同一個地方。為學生住處,假設每個系的學生住在同一個地方。v 函數(shù)依賴包括:函數(shù)依賴包括: (Sno, Cno) F Grade Sno Sdept (Sno, Cno) P Sdept Sno Sloc (Sno, Cno) P Sloc Sdept Sloc39 2NF(續(xù))(續(xù))v S-L-C的碼為的碼為(Sno, Cno)v S-L-C滿足第一范式。滿足第一范式。v 非主屬性非主屬性Sdept和和Sloc

21、部分函數(shù)依賴于碼部分函數(shù)依賴于碼(Sno, Cno)。SnoCnoGradeSdeptSlocS-L-C40S-L-C不是一個好的關系模式(續(xù))不是一個好的關系模式(續(xù))(1) 插入異常插入異常(2) 刪除異常刪除異常(3) 數(shù)據(jù)冗余度大數(shù)據(jù)冗余度大(4) 修改復雜修改復雜41S-L-C不是一個好的關系模式(續(xù))不是一個好的關系模式(續(xù))v 原因:原因: Sdept、 Sloc部分函數(shù)依賴于碼。部分函數(shù)依賴于碼。v 解決方法:解決方法: S-L-C分解為兩個關系模式,以消除這些部分函數(shù)依賴分解為兩個關系模式,以消除這些部分函數(shù)依賴 。 SC(Sno, Cno, Grade) S-L(Sno,

22、Sdept, Sloc)422NF(續(xù))(續(xù))函數(shù)依賴圖:函數(shù)依賴圖:SnoCnoGradeSCS-LSnoSdeptSlocv關系模式關系模式SC的碼為(的碼為(Sno,Cno)。)。v關系模式關系模式S-L的碼為的碼為Sno。v這樣非主屬性對碼都是完全函數(shù)依賴。這樣非主屬性對碼都是完全函數(shù)依賴。 43 2NF(續(xù))(續(xù))v2NF的定義:的定義:定義6.6 若若R1NF,且每一個,且每一個非主屬性非主屬性完全完全函數(shù)依賴于函數(shù)依賴于碼,則碼,則R2NF。例:例:S-L-C(Sno, Sdept, Sloc, Cno, Grade) 1NF S-L-C(Sno, Sdept, Sloc, Cn

23、o, Grade) 2NF SC(Sno, Cno, Grade) 2NF S-L(Sno, Sdept, Sloc) 2NF44 2NF(續(xù))(續(xù))v 采用投影分解法將一個采用投影分解法將一個1NF的關系分解為多個的關系分解為多個2NF的關系,的關系,可以在一定程度上減輕原可以在一定程度上減輕原1NF關系中存在的插入異常、刪關系中存在的插入異常、刪除異常、數(shù)據(jù)冗余度大、修改復雜等問題。除異常、數(shù)據(jù)冗余度大、修改復雜等問題。v 將一個將一個1NF關系分解為多個關系分解為多個2NF的關系,并不能完全消除的關系,并不能完全消除關系模式中的各種異常情況和數(shù)據(jù)冗余。關系模式中的各種異常情況和數(shù)據(jù)冗余。

24、456.2 規(guī)范化規(guī)范化6.2.1 函數(shù)依賴6.2.2 碼6.2.3 范式6.2.4 2NF6.2.5 3NF6.2.6 BCNF6.2.7 多值依賴6.2.8 4NF6.2.9 規(guī)范化小結46 6.2.5 3NFv3NF的定義:的定義:定義6.7 關系模式關系模式R 中若不存在這樣的碼中若不存在這樣的碼X、屬性、屬性組組Y及非主屬性及非主屬性Z(Z Y), 使得使得XY,YZ成立,成立, Y X,則稱,則稱R 3NF。n若若R3NF,則每一個,則每一個非主屬性非主屬性既不部分依賴既不部分依賴于碼于碼也不也不傳遞依賴傳遞依賴于碼。于碼。 473NF(續(xù))(續(xù))例:例:2NF關系模式關系模式S-

25、L(Sno, Sdept, Sloc)中中 函數(shù)依賴:函數(shù)依賴: SnoSdept Sdept Sno SdeptSloc 可得:可得: SnoSloc,即,即S-L中存在非主屬性對碼的傳遞函數(shù)依中存在非主屬性對碼的傳遞函數(shù)依 賴,賴,S-L 3NF傳遞48 3NF(續(xù))(續(xù))函數(shù)依賴圖:函數(shù)依賴圖:S-LSnoSdeptSloc493NF(續(xù))(續(xù))v 解決方法:解決方法: 采用投影分解法,把采用投影分解法,把S-L分解為兩個關系模式,以消分解為兩個關系模式,以消除傳遞函數(shù)依賴:除傳遞函數(shù)依賴: S-D(Sno, Sdept) D-L(Sdept,Sloc)S-D的碼為的碼為Sno, D-L

26、的碼為的碼為Sdept。n分解后的關系模式分解后的關系模式S-D與與D-L中不再存在傳遞依賴中不再存在傳遞依賴 503NF(續(xù))(續(xù))S-D的碼為的碼為Sno, D-L的碼為的碼為Sdept。SnoSdeptS-DSdeptSlocD-Lv S-L(Sno, Sdept, Sloc) 2NF S-L(Sno, Sdept, Sloc) 3NF S-D(Sno,Sdept) 3NFD-L(Sdept, Sloc) 3NF513NF(續(xù))(續(xù))v 采用投影分解法將一個采用投影分解法將一個2NF的關系分解為多個的關系分解為多個3NF的關系,可的關系,可以在一定程度上解決原以在一定程度上解決原2NF關

27、系中存在的插入異常、刪除異常、關系中存在的插入異常、刪除異常、數(shù)據(jù)冗余度大、修改復雜等問題。數(shù)據(jù)冗余度大、修改復雜等問題。v 將一個將一個2NF關系分解為多個關系分解為多個3NF的關系后,仍然不能完全消除的關系后,仍然不能完全消除關系模式中的各種異常情況和數(shù)據(jù)冗余。關系模式中的各種異常情況和數(shù)據(jù)冗余。526.2 規(guī)范化規(guī)范化6.2.1 函數(shù)依賴6.2.2 碼6.2.3 范式6.2.4 2NF6.2.5 3NF6.2.6 BCNF6.2.7 多值依賴6.2.8 4NF6.2.9 規(guī)范化小結53 6.2.6 BC范式(范式(BCNF)v定義6.8 關系模式關系模式R1NF,若,若XY且且Y X時時

28、X必含有碼,則必含有碼,則R BCNF。v等價于:每一個決定屬性因素都包含碼。等價于:每一個決定屬性因素都包含碼。54BCNF(續(xù))(續(xù))v若若RBCNF : 所有非主屬性對每一個碼都是完全函數(shù)依賴。所有非主屬性對每一個碼都是完全函數(shù)依賴。 所有的主屬性對每一個不包含它的碼,也是完全函數(shù)所有的主屬性對每一個不包含它的碼,也是完全函數(shù)依賴。依賴。 沒有任何屬性完全函數(shù)依賴于非碼的任何一組屬性。沒有任何屬性完全函數(shù)依賴于非碼的任何一組屬性。vR BCNF R 3NF充分不必要55BCNF(續(xù))(續(xù))例例5 關系模式關系模式C(Cno,Cname,Pcno)n C3NFn CBCNF例例6 關系模式

29、關系模式S(Sno,Sname,Sdept,Sage)n 假定假定S有兩個碼有兩個碼Sno,Snamen S3NF。n S BCNF56BCNF(續(xù))(續(xù))例例7關系模式關系模式SJP(S,J,P)n函數(shù)依賴:(函數(shù)依賴:(S,J)P;(J,P)Sn(S,J)與()與(J,P)都可以作為候選碼)都可以作為候選碼,屬性相交屬性相交nSJP3NF,nSJPBCNF57 BCNF(續(xù))(續(xù))例例8在關系模式在關系模式STJ(S,T,J)中,)中,S表示學生,表示學生,T表表示教師,示教師,J表示課程。表示課程。 函數(shù)依賴:函數(shù)依賴: (S,J)T,(S,T)J,TJ (S,J)和和(S,T)都是候選

30、碼都是候選碼58 BCNF(續(xù))(續(xù)) JSJTSTSTJ中的函數(shù)依賴中的函數(shù)依賴59BCNF(續(xù))(續(xù))vSTJ3NF 沒有任何非主屬性對碼傳遞依賴或部分依賴沒有任何非主屬性對碼傳遞依賴或部分依賴 vSTJBCNF T是決定因素,是決定因素,T不包含碼不包含碼60BCNF(續(xù))(續(xù))v解決方法:將解決方法:將STJ分解為二個關系模式:分解為二個關系模式: ST(S,T) BCNF, TJ(T,J) BCNF 沒有沒有任何屬性任何屬性對碼的部分函數(shù)依賴和傳遞函數(shù)依賴。對碼的部分函數(shù)依賴和傳遞函數(shù)依賴。SJSTTJTJ613NF與與BCNF的關系的關系vR BCNF R 3NFv如果如果R3NF

31、,且,且R只有一個候選碼只有一個候選碼 R BCNF R 3NF充分不必要充分必要62Stop here!636.2 規(guī)范化規(guī)范化6.2.1 函數(shù)依賴6.2.2 碼6.2.3 范式6.2.4 2NF6.2.5 3NF6.2.6 BCNF6.2.7 多值依賴6.2.8 4NF6.2.9 規(guī)范化小結646.2.7 多值依賴多值依賴例例9 學校中某一門課程由多個教師講授,他們使用學校中某一門課程由多個教師講授,他們使用相同的一套參考書。每個教員可以講授多門課程,相同的一套參考書。每個教員可以講授多門課程,每種參考書可以供多門課程使用。每種參考書可以供多門課程使用。65課課 程程 C教教 員員 T參參

32、 考考 書書 B 物理物理數(shù)學數(shù)學 計算數(shù)學計算數(shù)學李李 勇勇王王 軍軍 李李 勇勇張張 平平 張張 平平 周周 峰峰 普通物理學普通物理學光學原理光學原理 物理習題集物理習題集數(shù)學分析數(shù)學分析微分方程微分方程高等代數(shù)高等代數(shù)數(shù)學分析數(shù)學分析. 多值依賴(續(xù))多值依賴(續(xù))v 非規(guī)范化關系66普通物理學光學原理物理習題集普通物理學光學原理物理習題集數(shù)學分析微分方程高等代數(shù)數(shù)學分析微分方程高等代數(shù)李 勇李 勇李 勇王 軍王 軍王 軍李 勇李 勇李 勇張 平張 平張 平 物 理物 理物 理物 理物 理物 理數(shù) 學數(shù) 學數(shù) 學數(shù) 學數(shù) 學數(shù) 學 參考書參考書B教員教員T課程課程C多值依賴(續(xù))多值依

33、賴(續(xù))v 用二維表表示Teaching67多值依賴(續(xù))多值依賴(續(xù))v TeachingBCNFv Teaching具有唯一候選碼具有唯一候選碼(C,T,B), 即全碼即全碼 68多值依賴(續(xù))多值依賴(續(xù)) Teaching模式中存在的問題模式中存在的問題(1)數(shù)據(jù)冗余度大數(shù)據(jù)冗余度大 (2)插入操作復雜插入操作復雜(3) 刪除操作復雜刪除操作復雜(4) 修改操作復雜修改操作復雜存在多值依賴69多值依賴(續(xù))多值依賴(續(xù))v 定義6.9 設設R(U)是一個屬性集是一個屬性集U上的一個關系模式,上的一個關系模式, X、 Y和和Z是是U的子的子集,并且集,并且ZUXY。關系模式。關系模式R(

34、U)中中多值依賴多值依賴 XY成立,成立,當且僅當對當且僅當對R(U)的的任一關系任一關系r,給定的一對(,給定的一對(x,z)值,有一)值,有一組組Y的值,這組值僅僅決定于的值,這組值僅僅決定于x值而與值而與z值無關值無關v 例例 Teaching(C, T, B)70多值依賴(續(xù))多值依賴(續(xù))v多值依賴的另一個等價的形式化的定義:多值依賴的另一個等價的形式化的定義: 在在R(U)的任一關系)的任一關系r中,如果存在元組中,如果存在元組t,s 使得使得tX=sX,那么就必然存在元組那么就必然存在元組 w,v r,(,(w,v可以與可以與s,t相同),相同),使得使得wX=vX=tX,而,而

35、wY=tY,wZ=sZ,vY=sY,vZ=tZ(即交換(即交換s,t元組的元組的Y值所得的兩個新元組必在值所得的兩個新元組必在r中),則中),則Y多值依賴于多值依賴于X,記為,記為XY。 這里,這里,X,Y是是U的的子集,子集,Z=U-X-Y。71多值依賴(續(xù))多值依賴(續(xù))v平凡多值依賴和非平凡的多值依賴平凡多值依賴和非平凡的多值依賴若若XY,而,而Z,則稱,則稱 XY為為平凡的多值依賴平凡的多值依賴否則稱否則稱XY為為非平凡的多值依賴非平凡的多值依賴72多值依賴(續(xù))多值依賴(續(xù))例例10關系模式關系模式WSC(W,S,C)n W表示倉庫,表示倉庫,S表示保管員,表示保管員,C表示商品表示

36、商品n 假設每個倉庫有若干個保管員,有若干種商品假設每個倉庫有若干個保管員,有若干種商品 n 每個保管員保管所在的倉庫的所有商品每個保管員保管所在的倉庫的所有商品n 每種商品被所有保管員保管每種商品被所有保管員保管 73多值依賴(續(xù))多值依賴(續(xù))WSCW1S1C1W1S1C2W1S1C3W1S2C1W1S2C2W1S2C3W2S3C4W2S3C5W2S4C4W2S4C574多值依賴(續(xù))多值依賴(續(xù))WS且WC用下圖表示這種對應 75多值依賴的性質多值依賴的性質(1)多值依賴具有對稱性)多值依賴具有對稱性若若XY,則,則XZ,其中,其中ZUXY(2)多值依賴具有傳遞性)多值依賴具有傳遞性若若

37、XY,YZ, 則則XZ Y(3)函數(shù)依賴是多值依賴的特殊情況。)函數(shù)依賴是多值依賴的特殊情況。若若XY,則,則XY。(4)若)若XY,XZ,則,則XY Z。(5)若)若XY,XZ,則,則XYZ。(6)若)若XY,XZ,則,則XY-Z,XZ -Y。76多值依賴與函數(shù)依賴的區(qū)別多值依賴與函數(shù)依賴的區(qū)別(1) 多值依賴的有效性與屬性集的范圍有關多值依賴的有效性與屬性集的范圍有關(2) 若函數(shù)依賴若函數(shù)依賴XY在在R(U)上成立,則對于任何)上成立,則對于任何Y Y均有均有XY 成立成立多值依賴多值依賴XY若在若在R(U)上成立,不能斷言對于上成立,不能斷言對于任何任何Y Y有有XY 成立成立776.

38、2 規(guī)范化規(guī)范化6.2.1 函數(shù)依賴6.2.2 碼6.2.3 范式6.2.4 2NF6.2.5 3NF6.2.6 BCNF6.2.7 多值依賴6.2.8 4NF6.2.9 規(guī)范化小結786.2.8 4NFv 定義6.10 關系模式關系模式R1NF,如果對于,如果對于R的每個的每個非平凡多值依賴非平凡多值依賴XY(Y X),),X都含有碼,則都含有碼,則R4NF。v 如果如果R 4NF, 則則R BCNFn不允許不允許有非平凡且非函數(shù)依賴的有非平凡且非函數(shù)依賴的多值依賴多值依賴n允許允許的非平凡多值依賴是的非平凡多值依賴是函數(shù)依賴函數(shù)依賴794NF(續(xù))(續(xù))例例: Teaching(C,T,B

39、) 4NF 存在非平凡的多值依賴存在非平凡的多值依賴CT,且,且C不是碼不是碼n 用投影分解法把用投影分解法把Teaching分解為如下兩個關系模式:分解為如下兩個關系模式: CT(C, T) 4NF CB(C, B) 4NF CT, CB是平凡多值依賴是平凡多值依賴 806.2 規(guī)范化規(guī)范化6.2.1 函數(shù)依賴6.2.2 碼6.2.3 范式6.2.4 2NF6.2.5 3NF6.2.6 BCNF6.2.7 多值依賴6.2.8 4NF6.2.9 規(guī)范化小結816.2.9 規(guī)范化小結規(guī)范化小結v 關系數(shù)據(jù)庫的規(guī)范化理論是數(shù)據(jù)庫邏輯設計的工具關系數(shù)據(jù)庫的規(guī)范化理論是數(shù)據(jù)庫邏輯設計的工具v 目的:盡

40、量消除插入、刪除一場,修改復雜,數(shù)據(jù)冗余目的:盡量消除插入、刪除一場,修改復雜,數(shù)據(jù)冗余v 基本思想:逐步消除數(shù)據(jù)依賴中不合適的部分基本思想:逐步消除數(shù)據(jù)依賴中不合適的部分 實質:概念的實質:概念的單一化單一化82規(guī)范化小結(續(xù))規(guī)范化小結(續(xù))v 關系模式規(guī)范化的基本步驟關系模式規(guī)范化的基本步驟 1NF 消除非主屬性對碼的部分函數(shù)依賴消除非主屬性對碼的部分函數(shù)依賴消除決定屬性消除決定屬性 2NF集非碼的非平集非碼的非平 消除非主屬性對碼的傳遞函數(shù)依賴消除非主屬性對碼的傳遞函數(shù)依賴凡函數(shù)依賴凡函數(shù)依賴 3NF 消除主屬性對碼的部分和傳遞函數(shù)依賴消除主屬性對碼的部分和傳遞函數(shù)依賴 BCNF 消除

41、非平凡且非函數(shù)依賴的多值依賴消除非平凡且非函數(shù)依賴的多值依賴 4NF83規(guī)范化小結(續(xù))規(guī)范化小結(續(xù))v 不能說規(guī)范化程度越高的關系模式就越好不能說規(guī)范化程度越高的關系模式就越好v 在設計數(shù)據(jù)庫模式結構時,必須對現(xiàn)實世界的實際情況和在設計數(shù)據(jù)庫模式結構時,必須對現(xiàn)實世界的實際情況和用戶應用需求作進一步分析,確定一個合適的、能夠反映用戶應用需求作進一步分析,確定一個合適的、能夠反映現(xiàn)實世界的模式現(xiàn)實世界的模式v 上面的規(guī)范化步驟可以在其中任何一步終止上面的規(guī)范化步驟可以在其中任何一步終止84第六章第六章 關系數(shù)據(jù)理論關系數(shù)據(jù)理論6.1 問題的提出6.2 規(guī)范化6.3 數(shù)據(jù)依賴的公理系統(tǒng)*6.4

42、 模式的分解6.5 小結856.3 數(shù)據(jù)依賴的公理系統(tǒng)數(shù)據(jù)依賴的公理系統(tǒng)v邏輯蘊含邏輯蘊含定義6.11 對于滿足一組對于滿足一組函數(shù)依賴函數(shù)依賴 F 的關系模式的關系模式R ,其任何一個關系其任何一個關系r,若函數(shù)依賴,若函數(shù)依賴XY都成立都成立, (即(即r中任意中任意兩元組兩元組t,s,若,若tX=sX,則,則tY=sY),則稱),則稱F邏輯邏輯蘊含蘊含X Y861. Armstrong公理系統(tǒng)公理系統(tǒng) 關系模式關系模式R 來說有以下的推理規(guī)則:來說有以下的推理規(guī)則: A1.自反律自反律(Reflexivity):若):若Y X U,則,則X Y為為F所所蘊含。蘊含。 A2.增廣律增廣律(

43、Augmentation):若):若XY為為F所蘊含,且所蘊含,且Z U,則,則XZYZ為為F所蘊含。所蘊含。 A3.傳遞律傳遞律(Transitivity):若):若XY及及YZ為為F所蘊含,則所蘊含,則XZ為為F所蘊含。所蘊含。87定理定理 6.1 Armstrong推理規(guī)則是正確的推理規(guī)則是正確的(l)自反律)自反律: 若若Y X U,則,則X Y為為F所蘊含所蘊含 證證: 設設Y X U 對對R 的任一關系的任一關系r中的任意兩個元組中的任意兩個元組t,s:若若tX=sX,由于,由于Y X,有,有ty=sy,所以所以XY成立,自反律得證成立,自反律得證88定理定理 6.l Armstr

44、ong推理規(guī)則是正確的(續(xù))推理規(guī)則是正確的(續(xù))(2)增廣律增廣律: 若若XY為為F所蘊含,且所蘊含,且Z U,則,則XZYZ 為為F所所蘊含。蘊含。 證:證:設設XY為為F所蘊含,且所蘊含,且Z U。 設設R 的任一關系的任一關系r中任意的兩個元組中任意的兩個元組t,s:若若tXZ=sXZ,則有,則有tX=sX和和tZ=sZ;由由XY,于是有,于是有tY=sY,所以,所以tYZ=sYZ,所以,所以XZYZ為為F所蘊含,增廣律得證。所蘊含,增廣律得證。89定理定理 6.l Armstrong推理規(guī)則是正確的(續(xù))推理規(guī)則是正確的(續(xù))(3) 傳遞律:若傳遞律:若XY及及YZ為為F所蘊含,則所

45、蘊含,則 XZ為為 F所蘊含。所蘊含。證:證:設設XY及及YZ為為F所蘊含。所蘊含。對對R 的任一關系的任一關系 r中的任意兩個元組中的任意兩個元組 t,s:若若tX=sX,由于,由于XY,有,有 tY=sY;再由再由YZ,有,有tZ=sZ,所以,所以XZ為為F所蘊含,傳遞所蘊含,傳遞律得證。律得證。902. 導出規(guī)則導出規(guī)則1.根據(jù)根據(jù)A1,A2,A3這三條推理規(guī)則可以得到下面這三條推理規(guī)則可以得到下面三條推理規(guī)則:三條推理規(guī)則: 合并規(guī)則合并規(guī)則:由:由XY,XZ,有,有XYZ。 (A2, A3) 偽傳遞規(guī)則偽傳遞規(guī)則:由:由XY,WYZ,有,有XWZ。 (A2, A3) 分解規(guī)則分解規(guī)則

46、:由:由XY及及 Z Y,有,有XZ。 (A1, A3)91導出規(guī)則導出規(guī)則2.根據(jù)合并規(guī)則和分解規(guī)則,可得引理根據(jù)合并規(guī)則和分解規(guī)則,可得引理6.1 引理引理6.l XA1 A2Ak成立的充分必要條件是成立的充分必要條件是XAi成立(成立(i=l,2,k)92Armstrong公理系統(tǒng)公理系統(tǒng)vArmstrong公理系統(tǒng)是有效的、完備的公理系統(tǒng)是有效的、完備的n有效性:由有效性:由F出發(fā)根據(jù)出發(fā)根據(jù)Armstrong公理推導出公理推導出來的每一個函數(shù)依賴一定在來的每一個函數(shù)依賴一定在F+中;中;n完備性:完備性:F+中的每一個函數(shù)依賴,必定可以由中的每一個函數(shù)依賴,必定可以由F出發(fā)根據(jù)出發(fā)根

47、據(jù)Armstrong公理推導出來公理推導出來933. 函數(shù)依賴閉包函數(shù)依賴閉包定義6.l2 在關系模式在關系模式R中為中為F所邏輯蘊含所邏輯蘊含的函數(shù)依賴的全體叫作的函數(shù)依賴的全體叫作 F的閉包的閉包,記為,記為F+。定義6.13 設設F為屬性集為屬性集U上的一組函數(shù)依賴,上的一組函數(shù)依賴,X U, XF+ = A|XA能由能由F 根據(jù)根據(jù)Armstrong公理導出公理導出,XF+稱為屬性集稱為屬性集X關于函數(shù)依賴集關于函數(shù)依賴集F 的閉包的閉包94F的閉包的閉包F=XY, YZF+=X,Y,Z,XY, XZ, YZ, XYZ, XX, YY, ZZ,XYX, XZX, YZY, XYZX,X

48、Y,Y Z,XYY, XZY, YZZ, XYZY,XZ,YYZ,XYZ, XZZ, YZYZ,XYZZ,XXY,XYXY,XZXY,XYZXY, XXZ,XYYZ,XZXZ,XYZYZ,XYZ,XYXZ,XZXY,XYZXZ,XZYZ,XYXYZ,XZXYZ,XYZXYZ F=XA1, , XAn的閉包的閉包F+計算是一個計算是一個NP完全問題完全問題95關于閉包的引理關于閉包的引理v 引理6.2 設設F為屬性集為屬性集U上的一組函數(shù)依賴,上的一組函數(shù)依賴,X,Y U,XY能能 由由F 根據(jù)根據(jù)Armstrong公理導出的充分必要條件是公理導出的充分必要條件是Y XF+v 用途用途 將判定將

49、判定XY是否能由是否能由F根據(jù)根據(jù)Armstrong公理導出的問公理導出的問題,轉化為求出題,轉化為求出XF+ 、判定、判定Y是否為是否為XF+的子集的問題的子集的問題96求閉包的算法求閉包的算法算法6.1 求屬性集求屬性集X(X U)關于)關于U上的函數(shù)依賴集上的函數(shù)依賴集F 的閉包的閉包XF+ 輸入:輸入:X,F(xiàn)輸出:輸出:XF+步驟:步驟:(1)令)令X(0)=X,i=0(2)求)求B,這里,這里B = A |( V)( W)(VW FV X(i)A W);(3)X(i+1)=BX(i) (4)判斷)判斷X(i+1)= X (i)嗎嗎?(5)若相等或)若相等或X(i)=U , 則則X(i

50、)就是就是XF+ , 算法終止。算法終止。(6)若否,則)若否,則 i=i+l,返回第(,返回第(2)步。)步。97算法算法6.1對于算法對于算法6.1, 令令ai =|X(i)|,ai 形成一個形成一個步長大于步長大于1的嚴格遞增的序列,序列的上界的嚴格遞增的序列,序列的上界是是 | U |,因此該算法最多,因此該算法最多 |U| - |X| 次循環(huán)就次循環(huán)就 會終止。會終止。98函數(shù)依賴閉包函數(shù)依賴閉包例例1 已知關系模式已知關系模式R,其中,其中U=A,B,C,D,E;F=ABC,BD,CE,ECB,ACB。求(求(AB)F+ 。解解 設設X(0)=AB;(1) X(1)=ABCD=AB

51、CD。(2) X(0) X(1) X(2)=X(1)BE=ABCDE。(3) X(2)=U,算法終止,算法終止(AB)F+ =ABCDE。994. Armstrong公理系統(tǒng)的有效性與完備性公理系統(tǒng)的有效性與完備性v定理定理6.2 Armstrong公理系統(tǒng)是有效的、公理系統(tǒng)是有效的、完備的完備的 v證明:證明:1. 有效性有效性 可由定理可由定理6.1得證得證2. 完備性完備性只需證明只需證明逆否命題逆否命題: 若函數(shù)依賴若函數(shù)依賴XY不能由不能由F從從Armstrong公理導出,那么它必然不為公理導出,那么它必然不為F所蘊所蘊含含100Armstrong公理系統(tǒng)完備性證明公理系統(tǒng)完備性證明

52、(1) 引理引理: 若若VW成立,且成立,且V XF+,則,則W XF+ (2) 構造一張二維表構造一張二維表r,它由下列兩個元組構成,可以證明,它由下列兩個元組構成,可以證明r必是必是R(U,F(xiàn))的一個關系)的一個關系,即,即F+中的全部函數(shù)依賴在中的全部函數(shù)依賴在 r上成立。上成立。 XF+ U-XF+ 11.1 00.0 11.1 11.1 (3) 若若XY 不能由不能由F從從Armstrong公理導出,則公理導出,則Y 不是不是XF+ 的子集。的子集。1015. 函數(shù)依賴集等價函數(shù)依賴集等價定義6.14 如果如果G+=F+,就說函數(shù)依賴集,就說函數(shù)依賴集F覆蓋覆蓋G(F是是G的覆的覆蓋

53、,或蓋,或G是是F的覆蓋),或的覆蓋),或F與與G等價等價。引理6.3 F+ = G+ 的充分必要條件是的充分必要條件是F G+ ,和,和G F+ 證證: 必要性顯然,只證充分性。必要性顯然,只證充分性。(1)若)若F G+ ,則,則XF+ XG+ 。(2)任?。┤稳Y F+ 則有則有 Y XF+ XG+ 。 所以所以XY (G+)+= G+。即。即F+ G+。(3)同理可證)同理可證G+ F+ ,所以,所以F+ = G+。1026. 最小依賴集最小依賴集定義6.15 如果函數(shù)依賴集如果函數(shù)依賴集F滿足下列條件,則稱滿足下列條件,則稱F為一個為一個極小函數(shù)依賴集極小函數(shù)依賴集。亦稱為。亦稱為

54、最小依賴集最小依賴集或或最小覆蓋最小覆蓋。 (1) F中任一函數(shù)依賴的右部僅含有一個屬性。中任一函數(shù)依賴的右部僅含有一個屬性。 (2) F中不存在這樣的函數(shù)依賴中不存在這樣的函數(shù)依賴XA,使得,使得F與與F-XA等價。等價。 (3) F中不存在這樣的函數(shù)依賴中不存在這樣的函數(shù)依賴XA, X有真子集有真子集Z使得使得F-XAZA與與F等價。等價。 103最小依賴集最小依賴集例例2 關系模式關系模式S,其中:,其中: U= Sno,Sdept,Mname,Cno,Grade , F= SnoSdept,SdeptMname,(Sno,Cno)Grade 設設F=SnoSdept,SnoMname,

55、SdeptMname, (Sno,Cno)Grade,(Sno,Sdept)SdeptF是最小覆蓋,而是最小覆蓋,而F不是。不是。因為:因為:F - SnoMname與與F 等價等價 F - (Sno,Sdept)Sdept也與也與F 等價等價 1047. 極小化過程極小化過程定理6.3 每一個函數(shù)依賴集每一個函數(shù)依賴集F均等價于一個極小函數(shù)依賴均等價于一個極小函數(shù)依賴 集集Fm。此。此Fm稱為稱為F的最小依賴集。的最小依賴集。證明證明: 構造性證明,找出構造性證明,找出F的一個最小依賴集。的一個最小依賴集。 105極小化過程(續(xù))極小化過程(續(xù))(1)逐一檢查逐一檢查F中各函數(shù)依賴中各函數(shù)依

56、賴FDi:XY,若若Y=A1A2 Ak,k 2, 則用則用 XAj |j=1,2, k 來取代來取代XY。(2)逐一檢查逐一檢查F中各函數(shù)依賴中各函數(shù)依賴FDi:XA,令,令G=F-XA, 若若A XG+, 則從則從F中去掉此函數(shù)依賴。中去掉此函數(shù)依賴。(3)逐一取出逐一取出F中各函數(shù)依賴中各函數(shù)依賴FDi:XA,設,設X=B1B2Bm, 逐一考查逐一考查Bi (i=l,2,m),若),若A (X-Bi )F+ , 則以則以X-Bi 取代取代X。106極小化過程(續(xù))極小化過程(續(xù))例例3 F = AB,BA,BC,AC,CAFm1、Fm2都是都是F的最小依賴集:的最小依賴集: Fm1= AB

57、,BC,CA Fm2= AB,BA,AC,CA v F的最小依賴集的最小依賴集Fm不唯一不唯一v 極小化過程極小化過程( 定理定理6.3的證明的證明 )也是檢驗也是檢驗F是否為極小依賴是否為極小依賴集的一個算法集的一個算法107第六章第六章 關系數(shù)據(jù)理論關系數(shù)據(jù)理論6.1 問題的提出6.2 規(guī)范化6.3 數(shù)據(jù)依賴的公理系統(tǒng)*6.4 模式的分解6.5 小結1086.4 模式的分解模式的分解v 把低一級的關系模式分解為若干個高一級的關系模式的方把低一級的關系模式分解為若干個高一級的關系模式的方法不是唯一的法不是唯一的v 只有能夠保證分解后的關系模式與原關系模式等價,分解只有能夠保證分解后的關系模式

58、與原關系模式等價,分解方法才有意義方法才有意義109關系模式分解的標準關系模式分解的標準三種模式分解等價的定義:三種模式分解等價的定義: 分解具有無損連接性分解具有無損連接性 分解要保持函數(shù)依賴分解要保持函數(shù)依賴 分解既要保持函數(shù)依賴,又要具有無損連接性分解既要保持函數(shù)依賴,又要具有無損連接性110模式的分解(續(xù))模式的分解(續(xù))定義6.16 關系模式關系模式R的一個分解:的一個分解:= R1,R2,Rn U= Ui,且不存在,且不存在 Ui Uj,F(xiàn)i 為為 F在在 Ui 上的投影上的投影定義6.17 函數(shù)依賴集合函數(shù)依賴集合XY | XY F+XY Ui 的一個的一個覆蓋覆蓋 Fi 叫作叫

59、作 F 在屬性在屬性 Ui 上的投影上的投影i=1n111模式的分解(續(xù))模式的分解(續(xù))例:例:S-L(Sno, Sdept, Sloc) F= SnoSdept,SdeptSloc,SnoSloc S-L2NF 分解方法可以有多種:分解方法可以有多種:1. S-L分解為三個關系模式:分解為三個關系模式:SN(Sno) SD(Sdept) SO(Sloc)2. SL分解為下面二個關系模式:分解為下面二個關系模式:NL(Sno, Sloc)DL(Sdept, Sloc)3. 將將SL分解為下面二個關系模式:分解為下面二個關系模式:ND(Sno, Sdept) NL(Sno, Sloc)112具有無損連接性的模式分解具有無損連接性的模式分解v 關系模式關系模式R的一個分解的一個分解 = R1,R2, ,Rn

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論