第05章 (補(bǔ)充)模式分解的方法和實(shí)例_第1頁
第05章 (補(bǔ)充)模式分解的方法和實(shí)例_第2頁
第05章 (補(bǔ)充)模式分解的方法和實(shí)例_第3頁
第05章 (補(bǔ)充)模式分解的方法和實(shí)例_第4頁
第05章 (補(bǔ)充)模式分解的方法和實(shí)例_第5頁
已閱讀5頁,還剩58頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、1 1北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精第第5 5章章 關(guān)系數(shù)據(jù)理論及求精關(guān)系數(shù)據(jù)理論及求精志存高遠(yuǎn)志存高遠(yuǎn), 腳踏實(shí)地腳踏實(shí)地, 勇于探索勇于探索!2015/10/302015/10/302 2北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2一、什么是數(shù)據(jù)依賴一、什么是數(shù)據(jù)依賴1.完整性約束

2、的表現(xiàn)形式完整性約束的表現(xiàn)形式n 限定屬性取值范圍:例如學(xué)生成績必須在限定屬性取值范圍:例如學(xué)生成績必須在0-100之間之間n 定義屬性定義屬性值值間的相互關(guān)連(主要體現(xiàn)于值的間的相互關(guān)連(主要體現(xiàn)于值的相等與相等與否否),這就是數(shù)據(jù)依賴,它是數(shù)據(jù)庫模式設(shè)計(jì)的關(guān)),這就是數(shù)據(jù)依賴,它是數(shù)據(jù)庫模式設(shè)計(jì)的關(guān)鍵鍵3 3北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2什么是數(shù)據(jù)依賴(續(xù))什么是數(shù)據(jù)依賴(續(xù))2.數(shù)據(jù)依賴數(shù)據(jù)依賴n 一個(gè)關(guān)系內(nèi)部

3、屬性與屬性之間的約束關(guān)系一個(gè)關(guān)系內(nèi)部屬性與屬性之間的約束關(guān)系n 現(xiàn)實(shí)世界屬性間相互聯(lián)系的抽象現(xiàn)實(shí)世界屬性間相互聯(lián)系的抽象n 數(shù)據(jù)內(nèi)在的性質(zhì)數(shù)據(jù)內(nèi)在的性質(zhì)n 語義語義的體現(xiàn)的體現(xiàn)4 4北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2什么是數(shù)據(jù)依賴(續(xù))什么是數(shù)據(jù)依賴(續(xù))3. 數(shù)據(jù)依賴的類型數(shù)據(jù)依賴的類型n 函數(shù)依賴(函數(shù)依賴(Functional Dependency,簡記為,簡記為FD)n 多值依賴(多值依賴(Multivalued

4、 Dependency,簡記為,簡記為MVD)n 其他其他5 5北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2四、關(guān)系模式的簡化表示四、關(guān)系模式的簡化表示n 關(guān)系模式關(guān)系模式R(U, D, DOM, F) 簡化為一個(gè)三元組:簡化為一個(gè)三元組: R(U, F)n 當(dāng)且僅當(dāng)當(dāng)且僅當(dāng)U上的一個(gè)關(guān)系上的一個(gè)關(guān)系r滿足滿足F時(shí),時(shí),r稱為稱為關(guān)系模式關(guān)系模式 R(U, F)的一個(gè))的一個(gè)關(guān)系關(guān)系6 6北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院

5、計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2數(shù)據(jù)庫原理與應(yīng)用 張申勇6二、二、數(shù)據(jù)依賴對關(guān)系模式的影響數(shù)據(jù)依賴對關(guān)系模式的影響例例1建立一個(gè)描述學(xué)校教務(wù)的數(shù)據(jù)庫:建立一個(gè)描述學(xué)校教務(wù)的數(shù)據(jù)庫:學(xué)生的學(xué)號(學(xué)生的學(xué)號(Sno)、所在系()、所在系(Sdept)系主任姓名(系主任姓名(Mname)、課程名()、課程名(Cname)成績(成績(Grade)單一單一的關(guān)系模式:的關(guān)系模式:Student U Sno, Sdept, Mname, Cname, Grade 7 7北

6、京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2數(shù)據(jù)依賴對關(guān)系模式的影響(續(xù))數(shù)據(jù)依賴對關(guān)系模式的影響(續(xù))屬性組屬性組U上的一組函數(shù)依賴上的一組函數(shù)依賴F: F Sno Sdept, Sdept Mname, (Sno, Cname) Grade SnoCnameSdeptMnameGrade8 8北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系

7、數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2數(shù)據(jù)庫原理與應(yīng)用 張申勇8數(shù)據(jù)依賴對關(guān)系模式的影響(續(xù))數(shù)據(jù)依賴對關(guān)系模式的影響(續(xù))SnoSdeptMnameCnameGrade01外語系王軍大學(xué)英語8501外語系王軍英文寫作8001外語系王軍語文8702數(shù)學(xué)系李鐵大學(xué)英語7502數(shù)學(xué)系李鐵高等數(shù)學(xué)9003物理系朱巖大學(xué)英語8204物理系朱巖高等數(shù)學(xué)8405化學(xué)系馬兵大學(xué)英語7005化學(xué)系馬兵分析化學(xué)909 9北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系

8、數(shù)據(jù)理論與模式求精2022-1-22022-1-2關(guān)系模式關(guān)系模式Student中存在的問題中存在的問題1.數(shù)據(jù)冗余太大(數(shù)據(jù)冗余太大(Redundancy)2. 更新異常(更新異常(Update Anomalies)3. 插入異常(插入異常(Insertion Anomalies)4. 刪除異常(刪除異常(Deletion Anomalies)1010北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2數(shù)據(jù)依賴對關(guān)系模式的影響(續(xù))數(shù)據(jù)

9、依賴對關(guān)系模式的影響(續(xù))結(jié)論:結(jié)論:nStudent關(guān)系模式不是一個(gè)好的模式。關(guān)系模式不是一個(gè)好的模式。n“好好”的模式:的模式:不會(huì)發(fā)生插入異常、刪除異常、更新異常,不會(huì)發(fā)生插入異常、刪除異常、更新異常,數(shù)據(jù)冗余應(yīng)盡可能少。數(shù)據(jù)冗余應(yīng)盡可能少。原因:原因:由存在于模式中的由存在于模式中的某些數(shù)據(jù)依賴某些數(shù)據(jù)依賴引起的引起的解決方法:解決方法:通過通過分解分解關(guān)系模式來消除其中關(guān)系模式來消除其中不合適不合適 的數(shù)據(jù)依賴的數(shù)據(jù)依賴。1111北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精

10、關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2分解關(guān)系模式分解關(guān)系模式n 把這個(gè)單一模式分成把這個(gè)單一模式分成3個(gè)關(guān)系模式:個(gè)關(guān)系模式: S(Sno,Sdept,Sno Sdept); SC(Sno,Cname,Grade,(Sno,Cname)Grade); DEPT(Sdept,Mname,Sdept Mname)1212北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2二、規(guī)范化二、規(guī)范化 規(guī)范化理論規(guī)范化理論正是用來改造

11、關(guān)系模式,通過分解關(guān)系正是用來改造關(guān)系模式,通過分解關(guān)系模式來消除其中不合適的數(shù)據(jù)依賴,以解決插入異模式來消除其中不合適的數(shù)據(jù)依賴,以解決插入異常、刪除異常、更新異常和數(shù)據(jù)冗余問題。常、刪除異常、更新異常和數(shù)據(jù)冗余問題。1313北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2數(shù)據(jù)庫原理與應(yīng)用 張申勇132.1 函數(shù)依賴函數(shù)依賴n 函數(shù)依賴函數(shù)依賴n 平凡函數(shù)依賴與非平凡函數(shù)依賴平凡函數(shù)依賴與非平凡函數(shù)依賴n 完全函數(shù)依賴與部分函數(shù)依賴

12、完全函數(shù)依賴與部分函數(shù)依賴n 傳遞函數(shù)依賴傳遞函數(shù)依賴1414北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2一、函數(shù)依賴一、函數(shù)依賴定義定義6.1 設(shè)設(shè)R(U)是一個(gè)屬性集是一個(gè)屬性集U上的關(guān)系模式,上的關(guān)系模式,X和和Y是是U的子集。的子集。 若對于若對于R(U)的的任意任意一個(gè)可能的關(guān)系一個(gè)可能的關(guān)系r,r中不可能存在中不可能存在兩個(gè)元組在兩個(gè)元組在X上的屬性值相等,上的屬性值相等, 而在而在Y上的屬性值不上的屬性值不等,等,

13、則稱則稱 “X函數(shù)確定函數(shù)確定Y” 或或 “Y函數(shù)依賴于函數(shù)依賴于X”,記,記作作XY。 1515北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2說明說明 1. 所有關(guān)系實(shí)例所有關(guān)系實(shí)例均要滿足均要滿足2. 語義范疇語義范疇的概念的概念3. 數(shù)據(jù)庫設(shè)計(jì)者可以對現(xiàn)實(shí)世界作強(qiáng)制的規(guī)定數(shù)據(jù)庫設(shè)計(jì)者可以對現(xiàn)實(shí)世界作強(qiáng)制的規(guī)定1616北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第

14、第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2二、平凡函數(shù)依賴與非平凡函數(shù)依賴二、平凡函數(shù)依賴與非平凡函數(shù)依賴在關(guān)系模式在關(guān)系模式R(U)中,對于中,對于U的子集的子集X和和Y,如果如果XY,但,但Y X,則稱,則稱XY是非平凡的函數(shù)依賴是非平凡的函數(shù)依賴若若XY,但,但Y X, 則稱則稱XY是是平凡的函數(shù)依賴平凡的函數(shù)依賴n 例:在關(guān)系例:在關(guān)系SC(Sno, Cno, Grade)中,中, 非平凡函數(shù)依賴:非平凡函數(shù)依賴: (Sno, Cno) Grade 平凡函數(shù)依賴:平凡函數(shù)依賴:(Sno, Cno) Sno (Sno, Cno) C

15、no1717北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2平凡函數(shù)依賴與非平凡函數(shù)依賴(續(xù))平凡函數(shù)依賴與非平凡函數(shù)依賴(續(xù))l若若XY,則,則X稱為這個(gè)函數(shù)依賴的決定屬性稱為這個(gè)函數(shù)依賴的決定屬性組,也稱為決定因素(組,也稱為決定因素(Determinant)。)。l若若XY,YX,則記作,則記作XY。l若若Y不函數(shù)依賴于不函數(shù)依賴于X,則記作,則記作XY。1818北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)

16、據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2三、完全函數(shù)依賴與部分函數(shù)依賴三、完全函數(shù)依賴與部分函數(shù)依賴定義定義6.2 在在R(U)中,如果中,如果XY,并且對于,并且對于X的任何一個(gè)的任何一個(gè)真子集真子集X,都有,都有X Y, 則稱則稱Y對對X完全函數(shù)依賴完全函數(shù)依賴,記,記作作 X F Y。 若若XY,但,但Y不完全函數(shù)依賴于不完全函數(shù)依賴于X,則稱,則稱Y對對X部分函部分函數(shù)依賴數(shù)依賴,記作,記作 X P Y。 1919北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫

17、原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2完全函數(shù)依賴與部分函數(shù)依賴(續(xù))完全函數(shù)依賴與部分函數(shù)依賴(續(xù))例例1中中(Sno,Cno)Grade是完全函數(shù)依賴,是完全函數(shù)依賴, (Sno,Cno)Sdept是部分函數(shù)依賴是部分函數(shù)依賴 因?yàn)橐驗(yàn)镾no Sdept成立,且成立,且Sno是(是(Sno,Cno)的真)的真子集子集 FP2020北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)

18、據(jù)理論與模式求精2022-1-22022-1-2四、傳遞函數(shù)依賴四、傳遞函數(shù)依賴定義定義6.3 在在R(U)中,如果中,如果XY,(Y X),YX YZ,則,則稱稱Z對對X傳遞函數(shù)依賴傳遞函數(shù)依賴。 記為:記為:X Z 注注: 如果如果YX, 即即XY,則,則Z直接依賴于直接依賴于X。例例: 在關(guān)系在關(guān)系Std(Sno, Sdept, Mname)中,有:中,有: SnoSdept,SdeptMname,Mname傳遞函數(shù)依傳遞函數(shù)依賴于賴于Sno。傳遞2121北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章

19、關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-22.2 碼碼定義定義6.4 設(shè)設(shè)K為為R中的屬性或?qū)傩越M合。若中的屬性或?qū)傩越M合。若K U,則,則K稱為稱為R的的侯選碼侯選碼(Candidate Key)。)。 若候選碼多于一個(gè),則選定其中的一個(gè)做為若候選碼多于一個(gè),則選定其中的一個(gè)做為主碼主碼(Primary Key)。)。F2222北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2碼(續(xù))碼(續(xù))n 主屬

20、性與非主屬性主屬性與非主屬性l包含在任何一個(gè)候選碼中的屬性包含在任何一個(gè)候選碼中的屬性 ,稱為主屬性(,稱為主屬性(Prime attribute) l不包含在任何碼中的屬性稱為非主屬性(不包含在任何碼中的屬性稱為非主屬性(Nonprime attribute)或非碼屬性()或非碼屬性(Non-key attribute) n 全碼全碼l整個(gè)屬性組是碼,稱為全碼(整個(gè)屬性組是碼,稱為全碼(All-key) 2323北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精20

21、22-1-22022-1-2碼(續(xù))碼(續(xù))例例2關(guān)系模式關(guān)系模式S(Sno,Sdept,Sage),單個(gè)屬性,單個(gè)屬性Sno是碼,是碼, SC(Sno,Cno,Grade)中,()中,(Sno,Cno)是碼)是碼例例3關(guān)系模式關(guān)系模式R(P,W,A) P:演奏者:演奏者 W:作品:作品 A:聽眾:聽眾 一個(gè)演奏者可以演奏多個(gè)作品一個(gè)演奏者可以演奏多個(gè)作品 某一作品可被多個(gè)演奏者演奏某一作品可被多個(gè)演奏者演奏 聽眾可以欣賞不同演奏者的不同作品聽眾可以欣賞不同演奏者的不同作品 碼為碼為(P,W,A),即,即All-Key 2424北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)

22、據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2外部碼外部碼定義定義6.5 關(guān)系模式關(guān)系模式R中屬性或?qū)傩越M中屬性或?qū)傩越MX并非并非R的碼,但的碼,但X是是另一個(gè)關(guān)系模式的碼,則稱另一個(gè)關(guān)系模式的碼,則稱X是是R 的的外部碼(外部碼(Foreign key)也稱外碼也稱外碼n 如在如在SC(Sno,Cno,Grade)中,)中,Sno不是碼,但不是碼,但Sno是關(guān)系模式是關(guān)系模式S(Sno,Sdept,Sage)的碼,則)的碼,則Sno是關(guān)是關(guān)系模式系模式SC的外部碼。的外部碼。 n 主碼與外部碼一

23、起提供了表示關(guān)系間聯(lián)系的手段。主碼與外部碼一起提供了表示關(guān)系間聯(lián)系的手段。2525北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-22.3 范式范式n 范式是符合某一種級別的關(guān)系模式的集合范式是符合某一種級別的關(guān)系模式的集合n 關(guān)系數(shù)據(jù)庫中的關(guān)系必須滿足一定的要求。滿足不關(guān)系數(shù)據(jù)庫中的關(guān)系必須滿足一定的要求。滿足不同程度要求的為不同范式同程度要求的為不同范式n 范式的種類:范式的種類:第一范式第一范式(1NF)第二范式第二范式(2NF)

24、第三范式第三范式(3NF)BC范式范式(BCNF)第四范式第四范式(4NF)第五范式第五范式(5NF)2626北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2數(shù)據(jù)庫原理與應(yīng)用 張申勇262.3 范式范式n各種范式之間存在聯(lián)系:各種范式之間存在聯(lián)系:n某一關(guān)系模式某一關(guān)系模式R為第為第n范式,可簡記為范式,可簡記為RnNF。n 一個(gè)低一級范式的關(guān)系模式,通過一個(gè)低一級范式的關(guān)系模式,通過模式分解模式分解可以轉(zhuǎn)可以轉(zhuǎn)換為若干個(gè)高一級范式的

25、關(guān)系模式的集合,這種過換為若干個(gè)高一級范式的關(guān)系模式的集合,這種過程就叫程就叫規(guī)范化規(guī)范化 NF5NF4BCNFNF3NF2NF12727北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-22.4 2NFn1NF的定義的定義如果一個(gè)關(guān)系模式如果一個(gè)關(guān)系模式R的所有屬性都是的所有屬性都是不可分的基不可分的基本數(shù)據(jù)項(xiàng)本數(shù)據(jù)項(xiàng),則,則R1NFn第一范式是對關(guān)系模式的最起碼的要求。不滿足第一范式是對關(guān)系模式的最起碼的要求。不滿足第一范式的數(shù)據(jù)庫模

26、式不能稱為關(guān)系數(shù)據(jù)庫第一范式的數(shù)據(jù)庫模式不能稱為關(guān)系數(shù)據(jù)庫n但是滿足第一范式的關(guān)系模式并不一定是一個(gè)好但是滿足第一范式的關(guān)系模式并不一定是一個(gè)好的關(guān)系模式的關(guān)系模式2828北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-22NF(續(xù))(續(xù))例例4 關(guān)系模式關(guān)系模式 S-L-C(Sno, Sdept, Sloc, Cno, Grade) Sloc為學(xué)生住處,假設(shè)每個(gè)系的學(xué)生住在同一個(gè)地方為學(xué)生住處,假設(shè)每個(gè)系的學(xué)生住在同一個(gè)地方n 函數(shù)依

27、賴包括:函數(shù)依賴包括: (Sno, Cno) F Grade Sno Sdept (Sno, Cno) P Sdept Sno Sloc (Sno, Cno) P Sloc Sdept Sloc2929北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2 2NF(續(xù))(續(xù))S-L-C的碼為的碼為(Sno, Cno)n S-L-C滿足第一范式。滿足第一范式。n 非主屬性非主屬性Sdept和和Sloc部分函數(shù)依賴于碼部分函數(shù)依賴于碼(Sno,

28、 Cno)SnoCnoGradeSdeptSlocS-L-C3030北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2數(shù)據(jù)庫原理與應(yīng)用 張申勇30S-L-C不是一個(gè)好的關(guān)系模式(續(xù))不是一個(gè)好的關(guān)系模式(續(xù))(1) 插入異常插入異常(2) 刪除異常刪除異常(3) 數(shù)據(jù)冗余度大數(shù)據(jù)冗余度大(4) 修改復(fù)雜修改復(fù)雜3131北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05

29、 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2數(shù)據(jù)庫原理與應(yīng)用 張申勇31S-L-C不是一個(gè)好的關(guān)系模式(續(xù))不是一個(gè)好的關(guān)系模式(續(xù))n 原因原因 Sdept、 Sloc部分函數(shù)依賴于碼。部分函數(shù)依賴于碼。n 解決方法解決方法 S-L-C分解為兩個(gè)關(guān)系模式,以消除這些部分函數(shù)分解為兩個(gè)關(guān)系模式,以消除這些部分函數(shù)依賴依賴 SC(Sno, Cno, Grade) S-L(Sno, Sdept, Sloc)3232北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)

30、據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2數(shù)據(jù)庫原理與應(yīng)用 張申勇322NF(續(xù))(續(xù))函數(shù)依賴圖:函數(shù)依賴圖:SnoCnoGradeSCS-LSnoSdeptSlocv關(guān)系模式SC的碼為(Sno,Cno)v關(guān)系模式S-L的碼為Snov這樣非主屬性對碼都是完全函數(shù)依賴 3333北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2 2NF(續(xù))(續(xù))n2NF的定義的定義定義定義6.6 若若R1NF,且每一個(gè),且每

31、一個(gè)非主屬性非主屬性完全完全函數(shù)函數(shù)依賴于碼,則依賴于碼,則R2NF。例:例:S-L-C(Sno, Sdept, Sloc, Cno, Grade) 1NF S-L-C(Sno, Sdept, Sloc, Cno, Grade) 2NF SC(Sno, Cno, Grade) 2NF S-L(Sno, Sdept, Sloc) 2NF3434北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2分解辦法分解辦法n 首先,對于組成主碼的屬性集

32、合的每一個(gè)子集,用首先,對于組成主碼的屬性集合的每一個(gè)子集,用它作為主碼構(gòu)成一個(gè)表。它作為主碼構(gòu)成一個(gè)表。n 然后,將依賴于這些主碼的屬性放置到相應(yīng)的表中。然后,將依賴于這些主碼的屬性放置到相應(yīng)的表中。n 最后,去掉只由主碼的子集構(gòu)成的表。最后,去掉只由主碼的子集構(gòu)成的表。3535北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2 2NF(續(xù))(續(xù))n 采用投影分解法將一個(gè)采用投影分解法將一個(gè)1NF的關(guān)系分解為多個(gè)的關(guān)系分解為多個(gè)2NF

33、的的關(guān)系,可以在一定程度上減輕原關(guān)系,可以在一定程度上減輕原1NF關(guān)系中存在的插關(guān)系中存在的插入異常、刪除異常、數(shù)據(jù)冗余度大、修改復(fù)雜等問題。入異常、刪除異常、數(shù)據(jù)冗余度大、修改復(fù)雜等問題。n 將一個(gè)將一個(gè)1NF關(guān)系分解為多個(gè)關(guān)系分解為多個(gè)2NF的關(guān)系,并不能完全的關(guān)系,并不能完全消除關(guān)系模式中的各種異常情況和數(shù)據(jù)冗余。消除關(guān)系模式中的各種異常情況和數(shù)據(jù)冗余。3636北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2數(shù)據(jù)庫原理與應(yīng)用 張

34、申勇36 2.5 3NFn 3NF的定義的定義定義定義6.7 關(guān)系模式關(guān)系模式R 中若不存在這樣的碼中若不存在這樣的碼X、屬性組屬性組Y及非主屬性及非主屬性Z(Z Y),使得使得XY,YZ成成立,立,Y X,則稱,則稱R 3NF。n若若R3NF,則每一個(gè),則每一個(gè)非主屬性非主屬性既不部分依既不部分依賴賴于碼于碼也不傳遞依賴也不傳遞依賴于碼。于碼。 3737北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-23NF(續(xù))(續(xù))例:例:2NF

35、關(guān)系模式關(guān)系模式S-L(Sno, Sdept, Sloc)中中l(wèi)函數(shù)依賴:函數(shù)依賴: SnoSdept Sdept Sno SdeptSloc 可得:可得:SnoSloc,即,即S-L中存在非主屬性對碼的傳中存在非主屬性對碼的傳遞函數(shù)依賴,遞函數(shù)依賴,S-L 3NF傳遞3838北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2數(shù)據(jù)庫原理與應(yīng)用 張申勇38 3NF(續(xù))(續(xù))函數(shù)依賴圖:函數(shù)依賴圖:S-LSnoSdeptSloc3939北

36、京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-23NF(續(xù))(續(xù))n 解決方法解決方法 采用投影分解法,把采用投影分解法,把S-L分解為兩個(gè)關(guān)系模式,以消除傳分解為兩個(gè)關(guān)系模式,以消除傳遞函數(shù)依賴:遞函數(shù)依賴: S-D(Sno, Sdept) D-L(Sdept,Sloc)S-D的碼為的碼為Sno, D-L的碼為的碼為Sdept。n分解后的關(guān)系模式分解后的關(guān)系模式S-D與與D-L中不再存在傳遞依賴中不再存在傳遞依賴4040北京理工大學(xué)珠

37、海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2數(shù)據(jù)庫原理與應(yīng)用 張申勇403NF(續(xù))(續(xù))S-D的碼為的碼為Sno, D-L的碼為的碼為SdeptSnoSdeptS-DSdeptSlocD-Lv S-L(Sno, Sdept, Sloc) 2NF S-L(Sno, Sdept, Sloc) 3NF S-D(Sno,Sdept) 3NFD-L(Sdept, Sloc) 3NF4141北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院

38、數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2分解過程分解過程n (1)對于不是候選碼的每個(gè)決定因子,從表中刪去)對于不是候選碼的每個(gè)決定因子,從表中刪去依賴于它的所有屬性;依賴于它的所有屬性;n (2)新建一個(gè)表,新表中包含在原表中所有依賴于)新建一個(gè)表,新表中包含在原表中所有依賴于該決定因子的屬性;該決定因子的屬性;n (3)將決定因子作為新表的主碼。)將決定因子作為新表的主碼。4242北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張

39、申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-23NF(續(xù))(續(xù))n 采用投影分解法將一個(gè)采用投影分解法將一個(gè)2NF的關(guān)系分解為多個(gè)的關(guān)系分解為多個(gè)3NF的的關(guān)系,可以在一定程度上解決原關(guān)系,可以在一定程度上解決原2NF關(guān)系中存在的插關(guān)系中存在的插入異常、刪除異常、數(shù)據(jù)冗余度大、修改復(fù)雜等問題。入異常、刪除異常、數(shù)據(jù)冗余度大、修改復(fù)雜等問題。n 將一個(gè)將一個(gè)2NF關(guān)系分解為多個(gè)關(guān)系分解為多個(gè)3NF的關(guān)系后,仍然不能的關(guān)系后,仍然不能完全消除關(guān)系模式中的各種異常情況和數(shù)據(jù)冗余。完全消除關(guān)系模式中的各種異常情況和數(shù)據(jù)冗余。4343北京理工大學(xué)

40、珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2規(guī)范化舉例規(guī)范化舉例n 設(shè)有關(guān)系模式:設(shè)有關(guān)系模式:Student(學(xué)號,姓名,導(dǎo)師號,導(dǎo)(學(xué)號,姓名,導(dǎo)師號,導(dǎo)師名,課程號,課程說明,成績)師名,課程號,課程說明,成績)n 語義:一名學(xué)生只有一個(gè)導(dǎo)師,學(xué)生可選多門課。語義:一名學(xué)生只有一個(gè)導(dǎo)師,學(xué)生可選多門課。n 判斷此關(guān)系模式屬于幾范式,如不屬于判斷此關(guān)系模式屬于幾范式,如不屬于3NF,將其,將其規(guī)范化成規(guī)范化成3NF的。的。4444北京理工

41、大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-21 1此表是此表是1NF1NF,其函數(shù)依,其函數(shù)依賴賴為:為:學(xué)號學(xué)號F F姓名,學(xué)號姓名,學(xué)號F F導(dǎo)導(dǎo)師師號,學(xué)號號,學(xué)號F F導(dǎo)導(dǎo)師師名,課程名,課程號號F F課程課程說說明明, , ( (學(xué)號,課程號學(xué)號,課程號) )成成績績 主碼為(學(xué)號,課程號)主碼為(學(xué)號,課程號) 存在部分函數(shù)依存在部分函數(shù)依賴賴關(guān)系,不是關(guān)系,不是2NF2NF,首先將其分解為,首先將其分解為2NF2NF。學(xué)生(

42、學(xué)號,姓名,導(dǎo)師號,導(dǎo)師名),課程(課程號,課程說明),成績(學(xué)號,課程號,成績) 均為2NF4545北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-22 2判是否為判是否為3NF 3NF “學(xué)生學(xué)生”表不是表不是3NF3NF,其函數(shù)依,其函數(shù)依賴賴為:為:學(xué)號學(xué)號姓名,學(xué)號姓名,學(xué)號導(dǎo)導(dǎo)師師號,導(dǎo)號,導(dǎo)師師號號F F導(dǎo)導(dǎo)師師名,名,學(xué)號學(xué)號傳傳遞遞導(dǎo)導(dǎo)師師名名n 消除依消除依賴賴于于決決定者的屬性,定者的屬性,把把它們放在一個(gè)單獨(dú)的表

43、它們放在一個(gè)單獨(dú)的表中,得到:中,得到:n 學(xué)生(學(xué)生(學(xué)號學(xué)號,姓名,導(dǎo),姓名,導(dǎo)師師號),導(dǎo)號),導(dǎo)師師(導(dǎo)(導(dǎo)師師號,導(dǎo)號,導(dǎo)師師名)名)4646北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2數(shù)據(jù)庫原理與應(yīng)用 張申勇46規(guī)范化小結(jié)規(guī)范化小結(jié)n 關(guān)系數(shù)據(jù)庫的規(guī)范化理論是數(shù)據(jù)庫邏輯設(shè)計(jì)的工具關(guān)系數(shù)據(jù)庫的規(guī)范化理論是數(shù)據(jù)庫邏輯設(shè)計(jì)的工具n 目的:盡量消除插入、刪除異常,修改復(fù)雜,數(shù)據(jù)目的:盡量消除插入、刪除異常,修改復(fù)雜,數(shù)據(jù)冗余冗

44、余n 基本思想:逐步消除數(shù)據(jù)依賴中不合適的部分基本思想:逐步消除數(shù)據(jù)依賴中不合適的部分l實(shí)質(zhì):概念的實(shí)質(zhì):概念的單一化單一化4747北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2規(guī)范化小結(jié)(續(xù))規(guī)范化小結(jié)(續(xù))n 關(guān)系模式規(guī)范化的基本步驟關(guān)系模式規(guī)范化的基本步驟 1NF 消除非主屬性對碼的部分函數(shù)依賴消除非主屬性對碼的部分函數(shù)依賴消除決定屬性消除決定屬性 2NF集非碼的非平集非碼的非平 消除非主屬性對碼的傳遞函數(shù)依賴消除非主屬性對碼

45、的傳遞函數(shù)依賴凡函數(shù)依賴凡函數(shù)依賴 3NF 消除主屬性對碼的部分和傳遞函數(shù)依賴消除主屬性對碼的部分和傳遞函數(shù)依賴 BCNF 消除非平凡且非函數(shù)依賴的多值依賴消除非平凡且非函數(shù)依賴的多值依賴 4NF4848北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2數(shù)據(jù)庫原理與應(yīng)用 張申勇48規(guī)范化小結(jié)(續(xù))規(guī)范化小結(jié)(續(xù))n 不能說規(guī)范化程度越高的關(guān)系模式就越好不能說規(guī)范化程度越高的關(guān)系模式就越好n 在設(shè)計(jì)數(shù)據(jù)庫模式結(jié)構(gòu)時(shí),必須對現(xiàn)實(shí)世界的實(shí)際在

46、設(shè)計(jì)數(shù)據(jù)庫模式結(jié)構(gòu)時(shí),必須對現(xiàn)實(shí)世界的實(shí)際情況和用戶應(yīng)用需求作進(jìn)一步分析,確定一個(gè)合適情況和用戶應(yīng)用需求作進(jìn)一步分析,確定一個(gè)合適的、能夠反映現(xiàn)實(shí)世界的模式的、能夠反映現(xiàn)實(shí)世界的模式n 上面的規(guī)范化步驟可以在其中任何一步終止上面的規(guī)范化步驟可以在其中任何一步終止4949北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2數(shù)據(jù)庫原理與應(yīng)用 張申勇496.4 模式的分解模式的分解n 把低一級的關(guān)系模式分解為若干個(gè)高一級的關(guān)系模把低一級的關(guān)系模

47、式分解為若干個(gè)高一級的關(guān)系模式的方法不是唯一的式的方法不是唯一的n 只有能夠保證分解后的關(guān)系模式與原關(guān)系模式等價(jià),只有能夠保證分解后的關(guān)系模式與原關(guān)系模式等價(jià),分解方法才有意義分解方法才有意義5050北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2關(guān)系模式分解的標(biāo)準(zhǔn)關(guān)系模式分解的標(biāo)準(zhǔn)三種模式分解等價(jià)的定義:三種模式分解等價(jià)的定義: 分解具有無損連接性分解具有無損連接性 分解要保持函數(shù)依賴分解要保持函數(shù)依賴 分解既要保持函數(shù)依賴,又要具

48、有無損連接性分解既要保持函數(shù)依賴,又要具有無損連接性5151北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2關(guān)系模式的分解準(zhǔn)則關(guān)系模式的分解準(zhǔn)則n 模式分解要滿足:模式分解要滿足:模式分解具有無損連接性;模式分解具有無損連接性;模式分解能夠保持函數(shù)依賴。模式分解能夠保持函數(shù)依賴。 無損連接無損連接是指分解后的關(guān)系通過自然連接可以恢復(fù)成是指分解后的關(guān)系通過自然連接可以恢復(fù)成原來的關(guān)系,即通過自然連接得到的關(guān)系與原來的關(guān)原來的關(guān)系,即通過

49、自然連接得到的關(guān)系與原來的關(guān)系相比,既不多出信息、又不丟失信息。系相比,既不多出信息、又不丟失信息。 保持函數(shù)依賴保持函數(shù)依賴分解是指在模式的分解過程中,函數(shù)依分解是指在模式的分解過程中,函數(shù)依賴不能丟失的特性,即模式分解不能破壞原來的語義。賴不能丟失的特性,即模式分解不能破壞原來的語義。5252北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2關(guān)系模式的分解準(zhǔn)則(續(xù))關(guān)系模式的分解準(zhǔn)則(續(xù))n 例:例:S-D-LS-D-L(SnoSn

50、o,DeptDept,LocLoc)有函數(shù)依)有函數(shù)依賴賴:n Sno Sno Dept Dept, Dept Dept Loc Locn 不是第三范式的。不是第三范式的。至至少可以有三種分解方少可以有三種分解方案案,分別為:,分別為:n方方案案1 1:S-LS-L(SnoSno,LocLoc),),D-LD-L(DeptDept,LocLoc)n方方案案2 2:S-DS-D(SnoSno,DeptDept),),S-LS-L(SnoSno,LocLoc)n方方案案3 3:S-DS-D(SnoSno,DeptDept),),D-LD-L(DeptDept,LocLoc)n 這三種分解方這三種分

51、解方案案得到的關(guān)系模式都是第三范式的,得到的關(guān)系模式都是第三范式的,那那么如何比較這三種方么如何比較這三種方案案的好的好壞呢壞呢?由此在將一個(gè)關(guān)系?由此在將一個(gè)關(guān)系模式分解為多個(gè)關(guān)系模式時(shí)除了提高規(guī)范化程度之外,模式分解為多個(gè)關(guān)系模式時(shí)除了提高規(guī)范化程度之外,還需要考慮還需要考慮其他的一些因其他的一些因素素。5353北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2關(guān)系模式的分解準(zhǔn)則(續(xù))關(guān)系模式的分解準(zhǔn)則(續(xù))n 將一個(gè)關(guān)系模式將一個(gè)

52、關(guān)系模式RURF分解為若分解為若干干個(gè)關(guān)系模式個(gè)關(guān)系模式R R1 1U ,R R2 2U ,R Rn nU ,意,意味著味著將存儲在將存儲在一張一張二二維表維表r r中的數(shù)據(jù)分散到了若中的數(shù)據(jù)分散到了若干干個(gè)個(gè)二二維表維表r r1 1,r r2 2,r rn n中。這樣的分解應(yīng)該不丟中。這樣的分解應(yīng)該不丟失失信息,即能通信息,即能通過對關(guān)系過對關(guān)系r r1 1,r r2 2,r rn n的自然連接運(yùn)算重新得到關(guān)的自然連接運(yùn)算重新得到關(guān)系系r r中的所有信息。中的所有信息。n 事實(shí)上,將關(guān)系事實(shí)上,將關(guān)系r r投影為投影為r r1 1,r r2 2,r rn n時(shí)不會(huì)丟時(shí)不會(huì)丟失失信信息,關(guān)息,

53、關(guān)鍵鍵是對是對r r1 1,r r2 2,r rn n做自然連接時(shí)可能做自然連接時(shí)可能產(chǎn)產(chǎn)生生一些一些r r中原來沒有的元組,從而無法區(qū)別中原來沒有的元組,從而無法區(qū)別哪哪些元組是些元組是r r中原來有的,即數(shù)據(jù)庫中應(yīng)該存在的數(shù)據(jù),中原來有的,即數(shù)據(jù)庫中應(yīng)該存在的數(shù)據(jù),哪哪些是不些是不應(yīng)該有的。在這個(gè)意義上就丟應(yīng)該有的。在這個(gè)意義上就丟失失了信息。了信息。 5454北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2關(guān)系模式的分解準(zhǔn)則(續(xù)

54、)關(guān)系模式的分解準(zhǔn)則(續(xù))n 這三種分解方這三種分解方案案是否都滿足分解要求是否都滿足分解要求呢呢?n 假假設(shè)此關(guān)系模式的數(shù)據(jù)如表所示,此關(guān)系用設(shè)此關(guān)系模式的數(shù)據(jù)如表所示,此關(guān)系用r r表示。表示。SnoSno DeptDept LocLoc S01D1 L1 S02 D2 L2 S03 D2L2S04 D3L15555北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2關(guān)系模式的分解準(zhǔn)則(續(xù))關(guān)系模式的分解準(zhǔn)則(續(xù))n 若按方若按方案案

55、1 1將將S-D-LS-D-L投影到投影到S-LS-L和和D-LD-L的屬性上,得到的屬性上,得到如左邊兩個(gè)表所示的關(guān)系。做自然連接得到結(jié)果如如左邊兩個(gè)表所示的關(guān)系。做自然連接得到結(jié)果如右表所示。右表所示。SnoSno LocLoc S01L1 S02 L2 S03 L2S04 L1DeptDept LocLoc D1 L1 D2 L2 D3 L1 SnoSno DeptDept LocLoc S01D1 L1 S01D3L1S02 D2 L2 S03 D2L2S04D1 L1S04 D3L15656北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)

56、計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2關(guān)系模式的分解準(zhǔn)則(續(xù))關(guān)系模式的分解準(zhǔn)則(續(xù))n 無損連接性無損連接性n 將關(guān)系模式將關(guān)系模式R分解為個(gè)關(guān)系模式分解為個(gè)關(guān)系模式R1,R2,Rn,若對于,若對于R中的任中的任何一個(gè)可能的何一個(gè)可能的r,都有,都有r r1*r2*rn,即,即r在在R1,R2,Rn上的投影的自然連接等于上的投影的自然連接等于r,則稱關(guān)系模,則稱關(guān)系模式式R的這個(gè)分解具有的這個(gè)分解具有無損連接性無損連接性。5757北京理工大學(xué)珠海學(xué)院北京理工大學(xué)珠海學(xué)院 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院 數(shù)據(jù)庫原理與設(shè)計(jì)數(shù)據(jù)庫原理與設(shè)計(jì) 張申勇張申勇第第 05 05 章章 關(guān)系數(shù)據(jù)理論與模式求精關(guān)系數(shù)據(jù)理論與模式求精2022-1-22022-1-2關(guān)系模式的分解準(zhǔn)則(續(xù))關(guān)系模式的分解準(zhǔn)則(續(xù))n 再分析方再分析方案案2 2。將。將S-D-LS-D-L投影到投影到S-DS-D,S-LS-L的屬性上

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論