



版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、數(shù)據(jù)庫系統(tǒng)概論數(shù)據(jù)庫系統(tǒng)概論An Introduction to Database System第六講第六講 關(guān)系數(shù)據(jù)理論關(guān)系數(shù)據(jù)理論第六講 關(guān)系數(shù)據(jù)理論6.1 問題的提出6.2 規(guī)范化6.3 數(shù)據(jù)依賴的公理系統(tǒng)*6.4 模式的分解6.5 小結(jié)6.1 問題的提出關(guān)系模式存在的問題關(guān)系模式存在的問題例1(P170):描述學校的數(shù)據(jù)庫:學生的學號(Sno)、所在系(Sdept)系主任姓名(Mname)、課程號(Cno)成績(Grade)問題:如何設(shè)計關(guān)系模式?提示:1.概念模型 2.邏輯模型(關(guān)系模式)數(shù)據(jù)依賴對關(guān)系模式的影響(續(xù))學校數(shù)據(jù)庫的語義: 一個系有若干學生, 一個學生只屬于一個系; 一
2、個系只有一名主任; 一個學生可以選修多門課程, 每門課程有若干學生選修; 每個學生所學的每門課程都有一個成績。 假設(shè)設(shè)計成單一模式單一的關(guān)系模式 : Student U Sno, Sdept, Mname, Cno, Grade Student 表 Sno Sdept Mname Cno Grade S1 計算機系 張明 C1 95 S2 計算機系 張明 C1 90 S3 計算機系 張明 C1 88 S4 計算機系 張明 C1 70 S5 計算機系 張明 C1 78 關(guān)系模式Student中存在的問題 數(shù)據(jù)冗余太大n浪費大量的存儲空間 例:每一個系主任的姓名重復(fù)出現(xiàn) 修改復(fù)雜(Update A
3、nomalies)n數(shù)據(jù)冗余 ,修改數(shù)據(jù)時,維護數(shù)據(jù)完整性代價大。例:某系更換系主任后,系統(tǒng)必須修改與該系學生有關(guān)的每一個元組關(guān)系模式Student中存在的問題 插入異常(Insertion Anomalies)n該插的數(shù)據(jù)插不進去 例,如果一個系剛成立,尚無學生,我們就無法把這個系及其系主任的信息存入數(shù)據(jù)庫。 刪除異常(Deletion Anomalies)n不該刪除的數(shù)據(jù)不得不刪例,如果某個系的學生全部畢業(yè)了, 我們在刪除該系學生信息的同時,把這個系及其系主任的信息也丟掉了。數(shù)據(jù)依賴對關(guān)系模式的影響(續(xù))結(jié)論:Student關(guān)系模式不是一個好的模式?!昂谩钡哪J剑翰粫l(fā)生更新異常(插入異常
4、、刪除異常、修改復(fù)雜),數(shù)據(jù)冗余應(yīng)盡可能少。第六講 關(guān)系數(shù)據(jù)理論6.1 問題的提出6.2 規(guī)范化6.3 數(shù)據(jù)依賴的公理系統(tǒng)*6.4 模式的分解6.5 小結(jié)6.2 規(guī)范化 規(guī)范化理論正是用來改造關(guān)系模式,通過分解關(guān)系模式來消除其中不合適的數(shù)據(jù)依賴,以解決插入異常、刪除異常、修改復(fù)雜和數(shù)據(jù)冗余問題。6.2 規(guī)范化數(shù)據(jù)依賴(P170) 數(shù)據(jù)依賴是一個關(guān)系內(nèi)部屬性與屬性之間的一種約束關(guān)系。這種約束關(guān)系是通過屬性間值的相等與否體現(xiàn)出來的數(shù)據(jù)間的相關(guān)聯(lián)系。是現(xiàn)實世界屬性間相互聯(lián)系的抽象,是數(shù)據(jù)內(nèi)在的性質(zhì),是語義的體現(xiàn)。6.2 規(guī)范化數(shù)據(jù)依賴的類型p函數(shù)依賴(Functional Dependency,簡記
5、為FD)p多值依賴(Multivalued Dependency,簡記為MVD)6.2.1 函數(shù)依賴一、函數(shù)依賴二、平凡函數(shù)依賴與非平凡函數(shù)依賴三、完全函數(shù)依賴與部分函數(shù)依賴四、傳遞函數(shù)依賴一、函數(shù)依賴(P172)定義6.1 設(shè)R(U)是一個屬性集U上的關(guān)系模式,X和Y是U的子集。若對于R(U)的任意一個可能的關(guān)系r,r中不可能存在兩個元組在X上的屬性值相等, 而在Y上的屬性值不等, 則稱 “X函數(shù)確定Y” 或 “Y函數(shù)依賴于X”,記作XY。 函數(shù)依賴(續(xù))定義: 設(shè)R(U)是一個屬性集U上的關(guān)系模式,X和Y是U的子集。若對于R(U)的任意一個可能的關(guān)系r,對于X的每一個值, Y都有一個確定的
6、值與之對應(yīng),則稱 “X函數(shù)確定Y” 或 “Y函數(shù)依賴于X”,記作XY。一、函數(shù)依賴(續(xù)) 為什么叫函數(shù)依賴? Y=f(X) X0 - Y0 X1 - Y1 XN - YN說明: 1. 函數(shù)依賴不是指關(guān)系模式R的某個或某些關(guān)系實例滿足的約束條件,而是指R的所有關(guān)系實例均要滿足的約束條件。2. 函數(shù)依賴是語義范疇的概念。只能根據(jù)數(shù)據(jù)的語義來確定函數(shù)依賴。 例如“姓名性別”這個函數(shù)依賴只有在不允許有同名人的條件下成立函數(shù)依賴(續(xù))例: Student(Sno, Sname, Ssex, Sage, Sdept) 假設(shè)不允許重名,則有:Sno Ssex, Sno Sage , Sno Sdept, S
7、no Sname, Sname Ssex, Sname SageSname Sdept但Ssex Sage若XY,并且YX, 則記為XY。 若Y不函數(shù)依賴于X, 則記為XY。二、平凡函數(shù)依賴與非平凡函數(shù)依賴在關(guān)系模式R(U)中,對于U的子集X和Y,如果XY,但Y X,則稱XY是非平凡的函數(shù)依賴若XY,但Y X, 則稱XY是平凡的函數(shù)依賴例:在關(guān)系SC(Sno, Cno, Grade)中, 非平凡函數(shù)依賴: (Sno, Cno) Grade 平凡函數(shù)依賴: (Sno, Cno) Sno (Sno, Cno) CnoCno Cno平凡函數(shù)依賴與非平凡函數(shù)依賴(續(xù))n對于任一關(guān)系模式,平凡函數(shù)依賴都
8、是必然成立的,它不反映新的語義,因此若不特別聲明, 我們總是討論非平凡函數(shù)依賴。三、完全函數(shù)依賴與部分函數(shù)依賴定義6.2 在關(guān)系模式R(U)中,如果XY,并且對于X的任何一個真子集X,都有X Y, 則稱Y完全函數(shù)依賴于X,記作X Y。 若XY,但Y不完全函數(shù)依賴于X,則稱Y部分函數(shù)依賴于X,記作X P Y。 完全函數(shù)依賴與部分函數(shù)依賴(續(xù))例: 在關(guān)系SC(Sno, Cno, Grade)中, 由于:Sno Grade,Cno Grade, 因此:(Sno, Cno) Grade例: 在關(guān)系SC(Sno, Sname, Cno, Cname, Grade)中, (Sno, Cno) p Sna
9、me (Sno, Cno) p Cname 四、傳遞函數(shù)依賴定義6.3 在關(guān)系模式R(U)中,如果XY,YZ, 且Y X,Z Y,YX,則稱Z傳遞函數(shù)依賴于X。 注: 如果YX, 即XY,則Z直接依賴于X。例: 在關(guān)系Std(Sno, Sdept, Mname)中,有: Sno Sdept,Sdept Mname Mname傳遞函數(shù)依賴于Sno6.2.2 碼(與第二章P44的定義比較)定義6.4 設(shè)K為關(guān)系模式R中的屬性或?qū)傩越M合。若K U,則K稱為R的一個侯選碼(Candidate Key)。若關(guān)系模式R有多個候選碼,則選定其中的一個做為主碼(Primary key)。p主屬性與非主屬性pA
10、LL KEY外部碼定義6.5 關(guān)系模式 R 中屬性或?qū)傩越MX 并非 R的碼,但 X 是另一個關(guān)系模式的碼,則稱 X 是R 的外部碼(Foreign key)也稱外碼p主碼又和外部碼一起提供了表示關(guān)系間聯(lián)系的手段。6.2.3 范式p關(guān)系數(shù)據(jù)庫中的關(guān)系模式必須滿足一定的要求。滿足不同程度要求的為不同范式。p范式的種類:第一范式(1NF)第二范式(2NF)第三范式(3NF)BC范式(BCNF)第四范式(4NF)第五范式(5NF)6.2.3 范式p各種范式之間存在聯(lián)系:p某一關(guān)系模式R為第n范式,可簡記為RnNF。NF5NF4BCNFNF3NF2NF16.2.4 2NFp1NF的定義如果一個關(guān)系模式R
11、的所有屬性都是不可分的基本數(shù)據(jù)項,則R1NF。p第一范式是對關(guān)系模式的最起碼的要求。不滿足第一范式的數(shù)據(jù)庫模式不能稱為關(guān)系數(shù)據(jù)庫。p但是滿足第一范式的關(guān)系模式并不一定是一個好的關(guān)系模式。2NF例: 關(guān)系模式 SLC(Sno, Sdept, Sloc, Cno, Grade) Sloc為學生住處,假設(shè)每個系的學生住在同一個地方。p函數(shù)依賴包括: (Sno, Cno) f Grade Sno Sdept Sdept Sloc (Sno, Cno) P Sdept (Sno, Cno) P Sloc Sno Sloc 2NFpSLC的碼為(Sno, Cno)pSLC滿足第一范式。p 非主屬性Sdep
12、t和Sloc部分函數(shù)依賴于碼(Sno, Cno)SnoCnoGradeSdeptSlocSLCSLC不是一個好的關(guān)系模式(1) 插入異常假設(shè)Sno95102,SdeptIS,SlocN的學生還未選課,因課程號是主屬性,因此該學生的信息無法插入SLC。(2) 刪除異常 假定某個學生本來只選修了3號課程這一門課?,F(xiàn)在因身體不適,他連3號課程也不選修了。因課程號是主屬性,此操作將導致該學生信息的整個元組都要刪除。 SLC不是一個好的關(guān)系模式(3) 數(shù)據(jù)冗余度大 如果一個學生選修了10門課程,那么他的Sdept和Sloc值就要重復(fù)存儲了10次。(4) 修改復(fù)雜 例如學生轉(zhuǎn)系,在修改此學生元組的Sdep
13、t值的同時,還可能需要修改住處(Sloc)。如果這個學生選修了K門課,則必須無遺漏地修改K個元組中全部Sdept、Sloc信息。 2NFp原因 Sdept、 Sloc部分函數(shù)依賴于碼。p解決方法 SLC分解為兩個關(guān)系模式,以消除這些部分函數(shù)依賴 SC(Sno, Cno, Grade) SL(Sno, Sdept, Sloc)2NF函數(shù)依賴圖:SnoCnoGradeSCSLSnoSdeptSloc 2NFp2NF的定義定義6.6 若關(guān)系模式R1NF,并且每一個非主屬性都完全函數(shù)依賴于R的碼,則R2NF。p2NF的定義(等價定義) 若關(guān)系模式R1NF,并且消除了非主屬性對碼的部分函數(shù)依賴,則R2N
14、F。例:SLC(Sno, Sdept, Sloc, Cno, Grade)2NF SC(Sno, Cno, Grade) 2NF SL(Sno, Sdept, Sloc) 2NFp如果關(guān)系模式R的碼只有一個屬性,那么R一定滿足二范式。p判斷關(guān)系模式R(U,F)是否符合二范式U=A,B,C,D F=AB C,B D,C D 經(jīng)計算,屬性AB是唯一的碼 請問是否符合二范式? 第二范式(續(xù))p采用投影分解法將一個1NF的關(guān)系分解為多個2NF的關(guān)系,可以在一定程度上減輕原1NF關(guān)系中存在的插入異常、刪除異常、數(shù)據(jù)冗余度大、修改復(fù)雜等問題。p將一個1NF關(guān)系分解為多個2NF的關(guān)系,并不能完全消除關(guān)系模式
15、中的各種異常情況和數(shù)據(jù)冗余。 6.2.5 3NFp請分析關(guān)系模式SL(Sno, Sdept, Sloc),依然存在更新異常和數(shù)據(jù)冗余 6.2.5 3NF例:2NF關(guān)系模式SL(Sno, Sdept, Sloc)中p函數(shù)依賴: SnoSdept SdeptSloc SnoSlocSloc傳遞函數(shù)依賴于Sno,即SL中存在非主屬性對碼的傳遞函數(shù)依賴。 3NF函數(shù)依賴圖:SLSnoSdeptSloc 3NFp解決方法 采用投影分解法,把SL分解為兩個關(guān)系模式,以消除非主屬性的傳遞函數(shù)依賴: SD(Sno, Sdept) DL(Sdept, Sloc)SD的碼為Sno, DL的碼為Sdept。 3NF
16、SD的碼為Sno, DL的碼為Sdept。SnoSdeptSDSdeptSlocDL 3NFp3NF的定義定義6.7 關(guān)系模式R 中若不存在這樣的碼X、屬性組Y及非主屬性Z(Z Y), 使得XY,Y X,YZ,成立,則稱R 3NF。p3NF的定義(等價定義) 若關(guān)系模式R2NF,并且消除了非主屬性對碼的傳遞函數(shù)依賴,則R3NF。例, SL(Sno, Sdept, Sloc) 2NF SL(Sno, Sdept, Sloc) 3NF SD(Sno, Sdept) 3NF DL(Sdept, Sloc) 3NFp判斷關(guān)系模式R(U,F)是否符合三范式U=A,B,C,D F=AB C,AB D,C
17、D 經(jīng)計算,屬性AB是唯一的碼 請問是否符合三范式? 3NFp若R3NF,則R的每一個非主屬性既不部分函數(shù)依賴于候選碼也不傳遞函數(shù)依賴于候選碼。p如果R3NF,則R也是2NF。p采用投影分解法將一個2NF的關(guān)系分解為多個3NF的關(guān)系,可以在一定程度上解決原2NF關(guān)系中存在的插入異常、刪除異常、數(shù)據(jù)冗余度大、修改復(fù)雜等問題。p 將一個2NF關(guān)系分解為多個3NF的關(guān)系后,并不能完全消除關(guān)系模式中的各種異常情況和數(shù)據(jù)冗余。 3NF例:在關(guān)系模式STJ(S,T,J)中,S表示學生,T表示教師,J表示課程。 每一教師只教一門課。每門課由若干教師教,某一學生選定某門課,就確定了一個固定的教師。某個學生選修
18、某個教師的課就確定了所選課的名稱 : (S,J)T,(S,T)J,TJ候選碼: (S,J),(S,T)pSTJ(S,T,J)符合三范式p依然存在更新異常和數(shù)據(jù)冗余p原因:TJ ,T中沒有碼 6.2.6 BC范式(BCNF)p定義6.8 設(shè)關(guān)系模式R1NF,如果對于R的每個函數(shù)依賴XY,若Y不屬于X,則X必含有候選碼,那么RBCNF。BCNF(P177)p例5C (CNO,CNAME,PCNO)p例6S (SNO,SNAME,SDEPT,SAGE)p例7SJP (S,J,P) 學生課程名次 候選碼: (S,J) 和(J,P) 函數(shù)依賴: (S,J) P ,(J,P) Sp以上三個關(guān)系模式符合三范式,同時也符合BC范式BCNF的性質(zhì),若RBCNF :pR2NFpR3NFp消除了主屬性對不包含它的碼的部分函數(shù)依賴。p消除了主屬性對碼的傳遞依賴3NF與BCNF的關(guān)系p如果關(guān)系模式RBCNF, 必定有R3NFp若R3NF 則 R不一定BCNFp如果R3NF,且R只有一個候選碼, 則R必屬于BCNF。p 如果只有一個候選碼,對于主屬性來說,不包含它的候選碼不存在,所以,自然就不存在主屬性對不包含它的候選碼的部分依賴、傳遞依賴。 3NF和BCNF是在函數(shù)依賴的條件下對模式分解所能達到的分離程度的測試,一個模式中
溫馨提示
- 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)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030年中國不干膠標簽行業(yè)市場前景展望及投資規(guī)模研究報告
- 2025年中國無菌耳穴撳針市場調(diào)查研究報告
- 2025屆四川省成都市蓉城名校聯(lián)考高三上學期開學考-數(shù)學試題(含答案)
- 5.客流變化規(guī)律項目一運營計劃學習車站行車計劃77課件
- 2025年中國數(shù)顯式電子萬能試驗機市場調(diào)查研究報告
- 2025-2030年中國互聯(lián)網(wǎng)彩票業(yè)投資模式分析與發(fā)展戰(zhàn)略規(guī)劃預(yù)測研究報告
- 肇慶市實驗中學高中歷史一:第課專制集權(quán)的不斷加強教案
- 2025-2030年中國ORC發(fā)電行業(yè)發(fā)展趨勢展望與投資策略研究報告
- 新疆鐵道職業(yè)技術(shù)學院《藝術(shù)教育美術(shù)》2023-2024學年第二學期期末試卷
- 2025年中國組合式大氣反吹扁袋除塵器市場調(diào)查研究報告
- 港口生產(chǎn)過程中安全生產(chǎn)事故隱患點控制及預(yù)防課件
- 英語連讀發(fā)音技巧講解課件
- 幼兒園外出活動安全目標責任書
- 幼兒營養(yǎng)膳食調(diào)查問卷(4篇)
- 自身免疫性腦炎課件
- 外科圍手術(shù)期護理試題及答案
- 案場物業(yè)服務(wù)月度考核表
- 石材檢測報告
- 清風搖影梅花易斷例整理解讀
- 俄標閥門結(jié)構(gòu)長度_圖文
- 裝飾工程施工進度表18975
評論
0/150
提交評論