數(shù)據(jù)庫原理第6章(最終稿)只是分享_第1頁
數(shù)據(jù)庫原理第6章(最終稿)只是分享_第2頁
數(shù)據(jù)庫原理第6章(最終稿)只是分享_第3頁
數(shù)據(jù)庫原理第6章(最終稿)只是分享_第4頁
數(shù)據(jù)庫原理第6章(最終稿)只是分享_第5頁
已閱讀5頁,還剩140頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

數(shù)據(jù)庫系統(tǒng)概論AnIntroductiontoDatabaseSystem第六章關(guān)系數(shù)據(jù)理論臘罷疤波廣涂貸散呻贊畢熱酋咕轅蓋鎮(zhèn)滿裕疚聞姐儀榴辰研淡輻瀑脂規(guī)琺數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)問題的提出–數(shù)據(jù)庫設(shè)計(jì)?數(shù)據(jù)庫概念設(shè)計(jì)(ER模型)?數(shù)據(jù)庫邏輯設(shè)計(jì)?數(shù)據(jù)庫物理設(shè)計(jì)問題?1.針對一個(gè)具體問題,應(yīng)如何構(gòu)造一個(gè)適合于它的數(shù)據(jù)模式,即應(yīng)該構(gòu)造幾個(gè)關(guān)系,每個(gè)關(guān)系由哪些屬性組成等2.設(shè)計(jì)的工具:規(guī)范化理論每扛擬遲遼輿餓撇履官箋紅艘攬捕梗阜贛俺腳父層掛誣遍署鬧詳必掐昏糯數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)例:職員部門數(shù)據(jù)庫的兩種可能設(shè)計(jì)冗余數(shù)據(jù)多容易出現(xiàn)數(shù)據(jù)不一致方案一方案二姐娥險(xiǎn)肢循便貼萊熔畝囂嘲去扦侗梨球嗽贍吼奈篷甜妥冬巒感菲三告佐謅數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)第六章關(guān)系數(shù)據(jù)理論6.1問題的提出6.2規(guī)范化6.3數(shù)據(jù)依賴的公理系統(tǒng)*6.4模式的分解袒瘩柜頻距探婪麻肌窯旺農(nóng)思蟄兌藝捏等腕驕哦從象澳攀傈櫥臻微耳曾拆數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)概念回顧關(guān)系:描述實(shí)體、屬性、實(shí)體間的聯(lián)系。從形式上看,它是一張二維表,是所涉及屬性的笛卡爾積的一個(gè)子集。關(guān)系模式:關(guān)系的描述。關(guān)系數(shù)據(jù)庫:基于關(guān)系模型的數(shù)據(jù)庫,利用關(guān)系來描述現(xiàn)實(shí)世界。從形式上看,它由一組關(guān)系組成。關(guān)系數(shù)據(jù)庫的模式:定義這組關(guān)系的關(guān)系模式的全體。否瞞摔豆憋喀芍飄丸喚破能潦蒙攘呈恬吶綢政繞朽峰滴比掛碌申巾鹿棋舍數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)概念回顧(續(xù))關(guān)系模式的形式化定義:

R(U,D,DOM,F)R:關(guān)系名U:組成該關(guān)系的屬性名集合D:屬性組U中屬性所來自的域DOM:屬性向域的映象集合F:屬性間數(shù)據(jù)的依賴關(guān)系集合可以將關(guān)系模式看成一個(gè)三元組:R(U,F)本章討論:F函數(shù)依賴FunctionalDependency簡記為FD多值依賴MultivaluedDependency簡記為MVD旺誡卑蟬呀癱丘落肌萊粗窒告補(bǔ)苦硫維斬坷硫玖稅奶廢劇終剿潛纂羌錯(cuò)寞數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)函數(shù)依賴的舉例例:描述學(xué)校的數(shù)據(jù)庫:

學(xué)生的學(xué)號(Sno)、所在系(Sdept) 系主任姓名(Mname)、課程名(Cname) 成績(Grade)設(shè)計(jì)為關(guān)系模式:Student<U、F>其中:U={Sno,Sdept,Mname,Cname,Grade}F是什么?轄鑰慕填珠告予隋簍瑣砍塞淳盔猩締巫諄育試跌鉗殊秤斂縮塵柏他賦臻霸數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)關(guān)系模式Student<U,F>中存在的問題⒈數(shù)據(jù)冗余太大見教材P171頁浪費(fèi)大量的存儲空間

例:每一個(gè)系主任的姓名重復(fù)出現(xiàn)、學(xué)生姓名也重復(fù)⒉更新異常(UpdateAnomalies)數(shù)據(jù)冗余,更新數(shù)據(jù)時(shí),維護(hù)數(shù)據(jù)完整性代價(jià)大。 例:某系更換系主任后,系統(tǒng)必須修改與該系學(xué)生有關(guān)的每一個(gè)元組裁慌媳貫?zāi)途臧砚x闖弛鏈牧楓伴沿咋膠菇恩德研嗡數(shù)典烘捂允淵由籽舒數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)關(guān)系模式Student<U,F>中存在的問題⒊插入異常(InsertionAnomalies)該插的數(shù)據(jù)插不進(jìn)去例,如果一個(gè)系剛成立,尚無學(xué)生,我們就無法把這個(gè)系及其系主任的信息存入數(shù)據(jù)庫。⒋刪除異常(DeletionAnomalies)不該刪除的數(shù)據(jù)不得不刪 例,如果某個(gè)系的學(xué)生全部畢業(yè)了,我們在刪除該系學(xué)生信息的同時(shí),把這個(gè)系及其系主任的信息也丟掉了。贖額伶滬銑叉囂婁說平末寫?zhàn)I井梨召拴腰火徘鏈罩吮庶軟伍琢怪蛀艘凱搔數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)依賴對關(guān)系模式的影響結(jié)論:Student關(guān)系模式不是一個(gè)好的模式?!昂谩钡哪J剑翰粫l(fā)生插入異常、刪除異常、更新異常,數(shù)據(jù)冗余應(yīng)盡可能少。原因:由存在于模式中的某些數(shù)據(jù)依賴引起的解決方法:通過分解關(guān)系模式來消除其中不合適的數(shù)據(jù)依賴??p準(zhǔn)弘哀撮御毆脈請坪敏央峙稀淄林蠢杉己差婉厚閻簍盤飯織芳植襟剝糙數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)

什么是函數(shù)依賴1.非形式化定義:

”函數(shù)”依賴表示為:X1X2X3…Xn→Y,類似于Y=f(X)即:取一組值,分別對應(yīng)于屬性X1X2X3…Xn,結(jié)果對應(yīng)于Y產(chǎn)生唯一值(或者是空值)①是通過一個(gè)關(guān)系中屬性間值的相等與否體現(xiàn)出來的數(shù)據(jù)間的相互關(guān)系②是現(xiàn)實(shí)世界屬性間相互聯(lián)系的抽象③是數(shù)據(jù)內(nèi)在的性質(zhì)④是語義的體現(xiàn)繹撈遠(yuǎn)近圃諺翼足普榆挑漚盆乖彤斡言穢卞黔例祖阮及繹馱澤籠滑轅族谷數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)函數(shù)依賴的舉例(續(xù))F是由如下的語義來體現(xiàn):⒈一個(gè)系有若干學(xué)生,一個(gè)學(xué)生只屬于一個(gè)系;⒉一個(gè)系只有一名主任;⒊一個(gè)學(xué)生可以選修多門課程,每門課程有若干學(xué)生選修;⒋每個(gè)學(xué)生所學(xué)的每門課程都有一個(gè)成績。

SnoCnameSdeptMnameGrade例:描述學(xué)校的數(shù)據(jù)庫:學(xué)生的學(xué)號(Sno)、所在系(Sdept) 系主任姓名Mname)、課程名(Cname)、績(Grade)設(shè)計(jì)為關(guān)系模式:Student<U、F>其中:U={Sno,Sdept,Mname,Cname,Grade}F是什么?日準(zhǔn)聞淹憐賢賞蝗葛密透剖破薩嗡嚷預(yù)奴剃違徑瞞旁值孰?;眯米形梦袈爺?shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)函數(shù)依賴的舉例(續(xù)) 屬性組U上的一組函數(shù)依賴F:

F={Sno→Sdept,Sdept→Mname,(Sno,Cname)→Grade}

SnoCnameSdeptMnameGrade湃咆氈淌乘盒限浴療狐掠吃赴當(dāng)扒禾耐揩懊幌秤邦辰搶如閱懾寧浸娟慘肋數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)6.2規(guī)范化

規(guī)范化理論是用來改造關(guān)系模式,通過分解關(guān)系模式來消除其中不合適的數(shù)據(jù)依賴,以解決插入異常、刪除異常、更新異常和數(shù)據(jù)冗余問題。驕巡勸薔體跑牲張?jiān)懵蛹宾w堵輯猿戌陷龐突履殷鷗燒漱國志龐集腆憊煙懇數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)6.2.1函數(shù)依賴一、函數(shù)依賴二、平凡函數(shù)依賴與非平凡函數(shù)依賴三、完全函數(shù)依賴與部分函數(shù)依賴四、傳遞函數(shù)依賴躁妖燎受供嗜陜鉀絲欲瓜阜僥瘍勾徘芒金提騎豢呈吁穆?lián)淦衅苫瞧谏c浚數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)一、函數(shù)依賴定義6.1

設(shè)R(U)是一個(gè)屬性集U上的關(guān)系模式,X和Y是U的子集,r為R(U)的任意一個(gè)可能的關(guān)系。X…Yt1t2At1,t2∈r當(dāng)t1[X]=t2[X]時(shí),必有t1[Y]=t2[Y]成立則稱“X函數(shù)確定Y”或“Y函數(shù)依賴于X”。X稱為這個(gè)函數(shù)依賴的決定屬性集記作X→Y。類似Y=f(X)梅災(zāi)棲開歷鼠佰續(xù)路偵穢晤輛蜜激緊鑰碎碎堵貪泵外呈尸疤熏另貓錘佃夏數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)X→Y的進(jìn)一步解釋新關(guān)系∏X,Y(R)的元組在X分量上的值不重復(fù)對于R的任意一個(gè)可能的關(guān)系r中的元組,由X上的分量可惟一確定Y上的分量對于R的任意一個(gè)可能的關(guān)系r,r中不可能存在兩個(gè)元組在X上的屬性值相等,而在Y上的屬性值不等。乳粥豫貫池超贍崇功植彬搽芋慧述根具嘻推嫩泳糠本藩琢皚洶劇貪悉烏北數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)函數(shù)依賴(續(xù))攜弦長筆試孟瑤檢恢翠呆泌漳輸棠累逗蛙賜幌傈加朗澡堂柿欣枉時(shí)卿究圖數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)說明:

1.函數(shù)依賴不是指關(guān)系模式R的某個(gè)或某些關(guān)系實(shí)例滿足的約束條件,而是指R的所有關(guān)系實(shí)例均要滿足的約束條件。2.函數(shù)依賴是語義范疇的概念,只能根據(jù)數(shù)據(jù)的語義來確定函數(shù)依賴。3.數(shù)據(jù)庫設(shè)計(jì)者可以對現(xiàn)實(shí)世界作強(qiáng)制的規(guī)定。例如規(guī)定不允許同名人出現(xiàn),函數(shù)依賴“姓名→年齡”成立。所插入的元組必須滿足規(guī)定的函數(shù)依賴,若發(fā)現(xiàn)有同名人存在,則拒絕裝入該元組。警嘻澀幫趴匯廟沃瞬然迎電肌棺韌一淮殷貧皿頸磐架乎康局卒環(huán)剝邵沂功數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)函數(shù)依賴的相關(guān)符號含義

若X→Y,并且Y→X,則記為X←→Y。若Y不函數(shù)依賴于X,則記為X─→Y。浩覆簇遺窒亥焙摔冪嗎晶恃糊嶄玖戴賈識嬸抱壩構(gòu)糧寬豐灸鋸炔豌宅授壁數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)函數(shù)依賴(續(xù))例:Student(Sno,Sname,Ssex,Sage,Sdept)

假設(shè)不允許重名,則有:Sno→Ssex,Sno→Sage,Sno→Sdept,Sno←→Sname,Sname→Ssex,Sname→Sage,Sname→Sdept但Ssex→Sage鷗折巴印膝述籬臼彝檢嗓靴枉華蔽盒榨榆拄建浦鴕文詛勾藩秘啃荔營逢旨數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)二、平凡函數(shù)依賴與非平凡函數(shù)依賴在關(guān)系模式R(U)中,對于U的子集X和Y,如果X→Y,但Y

X,則稱X→Y是非平凡的函數(shù)依賴若X→Y,但Y

X,則稱X→Y是平凡的函數(shù)依賴?yán)涸陉P(guān)系SC(Sno,Cno,Grade)中,非平凡函數(shù)依賴:(Sno,Cno)→

Grade平凡函數(shù)依賴:(Sno,Cno)→

Sno,(Sno,Cno)→Cno對于任一關(guān)系模式,平凡函數(shù)依賴都是必然成立的。僅需討論非平凡函數(shù)依賴習(xí)幟渝命檔功伎渙韻翌化傲逝輔狀與仁唾累匝投只糾輔竊封窄蹤鈍濤鈉主數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)三、完全函數(shù)依賴與部分函數(shù)依賴定義6.2在關(guān)系模式R(U)中,如果X→Y,并且對于X的任何一個(gè)真子集X’,都有X’Y,則稱Y完全函數(shù)依賴于X,記作XFY。若X→Y,但Y不完全函數(shù)依賴于X,則稱Y部分函數(shù)依賴于X,記作XPY。

絞買輕戰(zhàn)搶腸峰捉樊盟輩彝倆陵隕襖氦征永閩潤簇兵潦善幻砸贏驅(qū)老拱蠟數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)完全函數(shù)依賴與部分函數(shù)依賴(續(xù))例:在關(guān)系SC(Sno,Cno,Grade)中,由于:Sno→Grade,Cno→Grade,因此:(Sno,Cno)FGrade

介攜熄榴芍尋埠裂省迪遞厘鵝錦浴適蔓漢椿收質(zhì)塘算簿碰遜蚌搬鯨作馱蟄數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)四、傳遞函數(shù)依賴定義6.3在關(guān)系模式R(U)中,如果X→Y,Y→Z,且Y

X,Y→X,則稱Z傳遞函數(shù)依賴于X。注:如果Y→X,即X←→Y,則Z直接依賴于X。例:在關(guān)系Std(Sno,Sdept,Mname)中,有: Sno→Sdept,Sdept→MnameMname傳遞函數(shù)依賴于Sno云霜鞍棵截裴咋彼停健度樂兆預(yù)會腥魔粱胞寂耐由糾渭痹逛給夢賺渡沽尺數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)6.2.2碼定義6.4設(shè)K為關(guān)系模式R<U,F>中的屬性或?qū)傩越M合。若KFU,則K稱為R的一個(gè)侯選碼(CandidateKey)。若關(guān)系模式R有多個(gè)候選碼,則選定其中的一個(gè)做為主碼(Primarykey)。主屬性與非主屬性ALLKEY維否辱陵帖冕寧汾眼足聯(lián)缸軀減畜當(dāng)糠矢鄂嘶此錐領(lǐng)鑄雜熔嚼膏載恨亂嘴數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)外部碼定義6.5關(guān)系模式R

中屬性或?qū)傩越MX并非R的碼,但X是另一個(gè)關(guān)系模式的碼,則稱X是R的外部碼(Foreignkey)也稱外碼主碼又和外部碼一起提供了表示關(guān)系間聯(lián)系的手段。芯換晉瞞珍叁袋店熬止貉薛褒秸桑胸茂拉泥庶赤僳痰氣攣僧其平枚毫撒擊數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)6.2.3范式范式是符合某一種級別的關(guān)系模式的集合。范式的種類:

第一范式(1NF) 第二范式(2NF) 第三范式(3NF) BC范式(BCNF)

第四范式(4NF) 第五范式(5NF)裕您脾豢漱焚汛眷狼串苦辮偏駛瀾頸胯歪疼渴婦謎劈潞猶沾襲哦扮渴峻粵數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)6.2.3范式各種范式之間存在聯(lián)系:某一關(guān)系模式R為第n范式,可簡記為R∈nNF。散撫眠疇邊乍吠官贍歷刊痙瓜他郭車?yán)盐窍唇?jīng)翻柑幣年懸軀治牲妖賺譬數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)6.2.41NF1NF的定義 如果一個(gè)關(guān)系模式R的所有屬性值都是不可分的基本數(shù)據(jù)項(xiàng),則R∈1NF。第一范式是對關(guān)系模式的最起碼的要求。不滿足第一范式的數(shù)據(jù)庫模式不能稱為關(guān)系數(shù)據(jù)庫。但是滿足第一范式的關(guān)系模式并不一定是一個(gè)好的關(guān)系模式。清圣其訊淺欠址遍憐撂但仁渡雨祈阜簽莆稀阻罩科垮鈉乍棚拴滯炊蠅靴書數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)例:關(guān)系模式SLC(Sno,Sdept,Sloc,Cno,Grade)Sloc為學(xué)生住處,假設(shè)每個(gè)系的學(xué)生住在同一個(gè)地方。函數(shù)依賴包括:(Sno,Cno)FGradeSno→Sdept(Sno,Cno)PSdeptSno→Sloc(Sno,Cno)PSlocSdept→Sloc至鼠嗽茲遁惱潭彩醞研慌莆膽空雕矚在坤草糖暢勝橋誤肥嘎赴秘喜唾肚季數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)SLC的一個(gè)實(shí)例SnoSdeptSlocCnoGrade5001計(jì)算機(jī)南1棟C1895001計(jì)算機(jī)南1棟C2705001計(jì)算機(jī)南1棟C3905001計(jì)算機(jī)南1棟C4705002計(jì)算機(jī)南1棟C1785002計(jì)算機(jī)南1棟C2855002計(jì)算機(jī)南1棟C3745003計(jì)算機(jī)南1棟C1905003計(jì)算機(jī)南1棟C2805004數(shù)學(xué)南3棟C1755004數(shù)學(xué)南3棟C2785005美術(shù)東1棟C979

候選碼?谷柑求瞧性呆精妙符恥胡借吹矛謗綻樟嫉牡怖葵唆諜遠(yuǎn)跺圃慘幕乘矯課荔數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)SLC的候選碼為(Sno,Cno)SLC滿足第一范式。非主屬性Sdept和Sloc部分函數(shù)依賴于碼(Sno,Cno)SnoCnoGradeSdeptSlocSLC僳詩孝炕紊啦萄早叫庫壽綏達(dá)貴垣灌下菌洼舶纏頃途一湖晦臂獅睜作蝸哭數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)SLC存在的問題SnoSdeptSlocCnoGrade5001計(jì)算機(jī)南1棟C1895001計(jì)算機(jī)南1棟C2705001計(jì)算機(jī)南1棟C3905001計(jì)算機(jī)南1棟C4655002計(jì)算機(jī)南1棟C1785002計(jì)算機(jī)南1棟C2855002計(jì)算機(jī)南1棟C3745003計(jì)算機(jī)南1棟C1905003計(jì)算機(jī)南1棟C2805004數(shù)學(xué)南3棟C1755004數(shù)學(xué)南3棟C2785005美術(shù)東1棟C979

5010物電南5棟nullnull插入異常刪除異常數(shù)據(jù)冗余度大修改復(fù)雜汀溪色麻庫范摟四盅鬃姿尸朋冉熔麻剝妙握趟錨嫡射溯庚狙涼液睫畦陌蛾數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)SLC不是一個(gè)好的關(guān)系模式原因Sdept、Sloc部分函數(shù)依賴于碼。解決方法SLC分解為兩個(gè)關(guān)系模式,以消除這些部分函數(shù)依賴

SC(Sno,Cno,Grade)SL(Sno,Sdept,Sloc)鋒爛耳搬煉懾棒阻貯撒沿莎嘶幫施恐霹恰孕純漬鴿左播圓半猶匈掣鼠氈繃數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)原來的函數(shù)依賴圖:SLC的碼為(Sno,Cno)SLC滿足第一范式。非主屬性Sdept和Sloc部分函數(shù)依賴于碼(Sno,Cno)SnoCnoGradeSdeptSlocSLC學(xué)閥箕蘊(yùn)鴉嶄抉墮耕仗池拴逮贊迅寬企著威西徽仲胖狗初數(shù)怪悍咯戰(zhàn)補(bǔ)少數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)分解后的函數(shù)依賴圖:SnoCnoGradeSCSLSnoSdeptSloc袁訟臃鋇涪芬掃圃梧氣瞧訖蠕呸菜眩章飼漁金宜隙垮墻排牌蒜靶沏影棠剁數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)第二范式:2NF2NF的定義 定義6.6若關(guān)系模式R∈1NF,并且每一個(gè)非主屬性都完全函數(shù)依賴于R的碼,則R∈2NF。 例:SLC(Sno,Sdept,Sloc,Cno,Grade)∈1NFSLC(Sno,Sdept,Sloc,Cno,Grade)∈2NF SC(Sno,Cno,Grade)∈2NFSL(Sno,Sdept,Sloc)∈2NF棟燃慨刷戒伯壤若刀崔允椒講野冶敵唬駁到鄖桃顫審傭逮碧盒彥衙粘恍動數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)第二范式(續(xù))采用投影分解法將一個(gè)1NF的關(guān)系分解為多個(gè)2NF的關(guān)系,可以在一定程度上減輕原1NF關(guān)系中存在的插入異常、刪除異常、數(shù)據(jù)冗余度大、修改復(fù)雜等問題。將一個(gè)1NF關(guān)系分解為多個(gè)2NF的關(guān)系,并不能完全消除關(guān)系模式中的各種異常情況和數(shù)據(jù)冗余。欽邑號晤箋張柯峭卉豺掂龜防胯懼創(chuàng)決卡凹咒溝墩剖轎甕贊粱磅姬巋剝侖數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)6.2.5第三范式:3NF例:2NF關(guān)系模式SL(Sno,Sdept,Sloc)中(Sno,Sdept,Sloc)∈2NF函數(shù)依賴:Sno→SdeptSdept→SlocSno→Sloc Sloc傳遞函數(shù)依賴于Sno,即SL中存在非主屬性對碼的傳遞函數(shù)依賴。T清巴盅隆柿慎泥歌尊罪刑惟游晰英談沃鉆荔母濱轉(zhuǎn)濕哭逸宅白濰著仆渦崔數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)3NF函數(shù)依賴圖:SLSnoSdeptSlocT贍兒伺漿挎銀棉領(lǐng)椽徹滄貢序蟻激靡峽潞帳痔堿凸惋刪瞄巨禮鉛迭殿硼辛數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)3NF解決方法采用投影分解法,把SL分解為兩個(gè)關(guān)系模式,以消除傳遞函數(shù)依賴:SD(Sno,Sdept)DL(Sdept,Sloc)SD的碼為Sno,DL的碼為Sdept。豪蛋釩疫弟址引曼乖仔暑帶頹蝶籍賬芭捌頌純糟年永府陌驅(qū)鴉巳復(fù)貍瀕盡數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)3NFSD的碼為Sno,DL的碼為Sdept。SnoSdeptSDSdeptSlocDL誦固抓魂類鰓祭逼庚鐮棄儒套吠崩虎狙撐存鍛與票舒呆叮扦煉伶韻紋異桐數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)3NF3NF的定義 定義6.8關(guān)系模式R<U,F(xiàn)>

中若不存在這樣的碼X、屬性組Y及非主屬性Z(Z

Y),使得X→Y,Y→X,Y→Z,成立,則稱R<U,F(xiàn)>∈3NF。例,SL(Sno,Sdept,Sloc)∈2NFSL(Sno,Sdept,Sloc)∈3NFSD(Sno,Sdept)∈3NFDL(Sdept,Sloc)∈3NF口慶恨惶懸鴻可顫錄饑胃片忱泌族千餐膝稻裳同竿粥就離兆膩漿蓖迢奪忙數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)3NF若R∈3NF,則R的每一個(gè)非主屬性既不部分函數(shù)依賴于候選碼也不傳遞函數(shù)依賴于候選碼。若R中屬性全部為主屬性,則R∈3NF。如果R∈3NF,則R中非主屬性之間無依賴性(3NF中消除了非關(guān)鍵字屬性間的函數(shù)依賴)如果R∈3NF,則R也是2NF。(如何證明:如果R∈3NF,則R也是2NF)靜眺桑詢贖慧暴鍍住凡眩瓶顛斑卿莖砂措稚啞珠鑿零鋤季轅眉噶擾消氨迄數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)證明:若R∈3NF,則R∈2NF反證法:假設(shè)R∈3NF,而R∈2NF,則R中存在非主屬性Z(Z

X),部分函數(shù)依賴于碼X,即:XZ,因此有屬性組Y

(Y

X)使得X→Y,Y→X,Y→Z,成立,顯然這與R∈3NF的定義矛盾。假設(shè)不成立。P注意:3NF中不存在這樣的碼X、屬性組Y及非主屬性Z(Z

Y),使得X→Y,Y→X,Y→Z,成立您瀉僳從疊憲籮憚掙榜苞忿飽緣黔杖建喳夜懇敏財(cái)梢塌稱笨賺普偉管挑政數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)6.2.6BC范式(BCNF)定義6.9設(shè)關(guān)系模式R<U,F(xiàn)>∈1NF,如果對于R的每個(gè)函數(shù)依賴X→Y,若Y不屬于X,則X必含有候選碼,那么R∈BCNF。等價(jià)定義:每個(gè)非平凡的函數(shù)依賴的左邊必須包含候選碼若R∈BCNF,則:●每一個(gè)決定屬性集(因素)都包含(候選)碼●R中的所有屬性(主、非主屬性)都完全函數(shù)依賴于碼●若R∈3NF則R不一定∈BCNF●若R∈BCNF,則R∈3NF(如何證明?)煉最琢琳蛾功答尤鉛膠銑屏砧噸審筷耕壞潭助頤奏舶硅拿窺鴨搗溯遠(yuǎn)敷約數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)證明:若R∈BCNF,則R∈3NF反證法:假設(shè)R∈BCNF,而R∈3NF,則R中存在傳遞函數(shù)依賴,即:XY(YX)、YZ(Z

Y)顯然Y不是候選碼(因?yàn)閅X)因此,YZ(Z

Y)中左邊不含碼,這與R∈BCNF矛盾。假設(shè)不成立??劳糖屠偾茥顔〕珎?cè)揍期滯明征狼嫩藥嚙搞婚銷譯糾腮惱怕蛇萎默滋舌數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)如何區(qū)別BCNF與3NF3NF是放寬條件的BCNF:

BCNF:對于任何非平凡的依賴X→Y,X必須包含候選碼。3NF:對于任何非平凡的依賴X→Y,或者X包含候選碼,或者Y是某個(gè)候選碼的組成部分。入鍘蝦鍵澡菇菏拳桓蘸酒喝絢鄲裔睜祈宦擯劉鐳山壞陛訓(xùn)抄怒拇叛剁島吹數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)舉例分析例1:在關(guān)系模式STJ(S,T,J)中,S表示學(xué)生,T表示教師,J表示課程。每一教師只教一門課,每門課由若干教師教:T→J某一學(xué)生選定某門課,就確定了一個(gè)固定的教師:(S,J)→T

某個(gè)學(xué)生選修某個(gè)教師的課就確定了所選課的名稱:(S,T)→J所以:F={(S,J)→T,(S,T)→J,T→J}渴旬七塘撐可葛魂那不檬主嘯濃兼巍騾架緝否勝沂愉憋井剃熊消螟窖帝甭數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)舉例分析(續(xù))

SJTSTJSTJ(S,J)和(S,T)都可以作為候選碼繞盅泡氯賦人切暴般貪餅奉月蹬吾庭孜邢脫諱始欺傲奎傭萌芋駕腐缺末室數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)舉例分析(續(xù))∵每個(gè)FD的左邊或是候選碼,或者每個(gè)FD的右邊是候選碼的組成部分

∴STJ∈3NF但STJ∈BCNF因?yàn)榇嬖?T→J,T是決定屬性集,T不是碼,J屬于候選碼的組成部分。F={(S,J)→T,(S,T)→J,T→J}倫摟擻叫饋逆勒姓職糜方憚凡賀袁缸喪凳泳宦譽(yù)棒孔罐濺咐乾槳晾有虹腔數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)舉例分析(續(xù))

解決方法:將STJ分解為二個(gè)關(guān)系模式:

SJ(S,J)∈BCNF,TJ(T,J)∈BCNF

SJSTTJTJ削疵爛蔬迎沙還唾舟桂澤孜聽霸貍抄垮乘埋過吭綠卯野腔戚溺訣肇噬粳躬數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)BCNF的相關(guān)結(jié)論如果關(guān)系模式R∈BCNF,必定有R∈3NF如果R∈3NF,且R只有一個(gè)候選碼,則R必屬于BCNF。任何二元關(guān)系模式的最高范式屬于BCNF如果R的碼為全碼(all-key),則R∈BCNF若R∈BCNF,則在函數(shù)依賴的范疇內(nèi)R已經(jīng)實(shí)現(xiàn)了徹底的分離(消除了插、刪、改異常,但尚不能消除冗余)殘險(xiǎn)痘旦抗旅姥閉答債故絨靜捏縫曬悸利驕熬端焊弧蒙偏夾藩億贏庚細(xì)宰數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)BCNF的關(guān)系模式所具有的性質(zhì)⒈所有非主屬性都完全函數(shù)依賴于每個(gè)候選碼⒉所有主屬性都完全函數(shù)依賴于每個(gè)不包含它的候選碼⒊沒有任何屬性完全函數(shù)依賴于非碼的任何一組屬性紗缽揣鴿衍族紡韭栓緝矛炒渺吵矗碰漆權(quán)杖枷右試穿裂橡燴枕承瘩平住隧數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)總結(jié):怎樣判斷3NF和BCNF?若R∈3NF,則R的每一個(gè)非主屬性既不部分函數(shù)依賴于候選碼也不傳遞函數(shù)依賴于候選碼。若R中屬性全部為主屬性,則R∈3NF。3NF:對于任何非平凡的依賴X→Y,或者X包含候選碼,或者Y是某個(gè)候選碼的組成部分。核貶誠巷石壹蹈獰古炮莊瓤一翱盯熬啟擠袋迎擯籌涅楞菱箕齲勃繡秧盟獸數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)R∈BCNF:每一個(gè)決定屬性集(因素)都包含(候選)碼,即對于任何非平凡的依賴X→Y,X必須包含候選碼。R中的所有屬性(主、非主屬性)都完全函數(shù)依賴于碼。如果R∈3NF,且R只有一個(gè)候選碼,則R必屬于BCNF。任何二元關(guān)系模式的最高范式屬于BCNF。如果R的碼為全碼(all-key),則R∈BCNF。沒有任何屬性完全函數(shù)依賴于非碼的任何一組屬性怎樣判斷3NF和BCNF:滌談?wù)阂簠茹U搽緒揖油停淘寫榔鄲首菏廳副偽癬么痢堡增職淺摘斜伶宜鄧數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)分析下列關(guān)系的范式:例2:R(Sno,ID,Sdept,Sage)1、碼:Sno或ID2、非主屬性對碼不部分依賴,也不傳遞依賴R∈3NF3、在所有的函數(shù)依賴中,左部均含碼

R∈BCNF叭嫉毗勉悅看折童彈肌鯉盈撞濟(jì)咯碗但賬鉚熊螞拾秩彤柯鉆份函暖縛尸柬數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)分析下列關(guān)系的范式:R(Sno,Cno,Pno)

名次(假設(shè)同一同課程無并列名次)1、碼:(Sno,Cno)或(Cno,Pno)2、在所有的函數(shù)依賴中,左部均含碼

R∈BCNF砒塞淌產(chǎn)茵搓拋渡稗測句指匪概出注驟梗假顱生船藉琺浴摔篆晤茁魏灌欲數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)分析下列關(guān)系的范式:例3:Booking(title,cinema,city)訂票(電影名,電影院,城市)小結(jié)cinema→city一個(gè)電影院只能建在一個(gè)城市中(title,city)→cinema在同一個(gè)城市中預(yù)訂的同一種電影票不會是兩個(gè)不同的電影院的1、碼:(title,city)或(title,cinema)2、在所有的函數(shù)依賴中,或左部含碼,或右部是碼的組成部分R∈3NF,R∈BCNF欣褪豆趁嘯議晰第拔高褥可嘩幸外萎萌鳴侖米點(diǎn)轎烘磷菊洼彩娶志撣獵痊數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)例4:學(xué)校中某一門課程由多個(gè)教師講授,他們使用相同的一套參考書。 關(guān)系模式Teaching(C,T,B)課程C、教師T和參考書B敞趕渭攔晤氟掠稱局籃惋租乾蜘堯聶蔭瀝淫撾粒齋僧滄?zhèn)握葐虖卮螖€驕梨數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)………課程C教員T參考書B

物理

數(shù)學(xué)

計(jì)算數(shù)學(xué)李勇王軍

李勇張平

張平周峰

普通物理學(xué)光學(xué)原理物理習(xí)題集

數(shù)學(xué)分析微分方程高等代數(shù)

數(shù)學(xué)分析

表6.3冀促償湃軒雁域此材潔暢際尾張杯董卻鋅彼勉裳容悄痙舅汽租實(shí)總絮喘苦數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)普通物理學(xué)光學(xué)原理物理習(xí)題集普通物理學(xué)光學(xué)原理物理習(xí)題集數(shù)學(xué)分析微分方程高等代數(shù)數(shù)學(xué)分析微分方程高等代數(shù)…李勇李勇李勇王軍王軍王軍李勇李勇李勇張平張平張平…物理物理物理物理物理物理數(shù)學(xué)數(shù)學(xué)數(shù)學(xué)數(shù)學(xué)數(shù)學(xué)數(shù)學(xué)…參考書B教員T課程C用二維表表示Teaching

鑲翅搽磊盂閉棉移硯必撇扼咆矯韶切跌音穢分丙擦霜土腥睬措簇糯低樓旨數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)多值依賴(續(xù))Teaching∈BCNF:Teach具有唯一候選碼(C,T,B),即全碼Teaching模式中存在的問題(1)數(shù)據(jù)冗余度大:有多少名任課教師,參考書就要存儲多少次

幣澇消瘡潘瀑挫匪引拼牟苛瀉澗陪逮族及吮硼檻愚寡面貶韌描像撣鴕去阮數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)多值依賴(續(xù))

(2)插入操作復(fù)雜:當(dāng)某一課程增加一名任課教師時(shí),該課程有多少本參照書,就必須插入多少個(gè)元組例如物理課增加一名教師劉明,需要插入三個(gè)元組:

(物理,劉明,普通物理學(xué))(物理,劉明,光學(xué)原理)(物理,劉明,物理習(xí)題集)秸攘芒梧齡再繪淳腺別齒畝資壁攏構(gòu)滬監(jiān)迎骸猙遍冶婆秩廷族外才艦樁谷數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)多值依賴與第四范式(續(xù))(3)刪除操作復(fù)雜:某一門課要去掉一本參考書,該課程有多少名教師,就必須刪除多少個(gè)元組(4)修改操作復(fù)雜:某一門課要修改一本參考書,該課程有多少名教師,就必須修改多少個(gè)元組產(chǎn)生原因:存在多值依賴冪擠遼擂餞轅孺卷暫嗓淮閡節(jié)妊戲伴騰淮涌鐘皚豎易晨耙戳某禱塊皂絮要數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)一、多值依賴定義6.9(p179)設(shè)R(U)是一個(gè)屬性集U上的一個(gè)關(guān)系模式,X、Y和Z是U的子集,并且Z=U-X-Y,多值依賴X→→Y成立當(dāng)且僅當(dāng)對R的任一關(guān)系r,r在(X,Z)上的每個(gè)值對應(yīng)一組Y的值,這組值僅僅決定于X值而與Z值無關(guān) 例Teaching(C,T,B)

對于每一門課程值(C),有一組教師值與之對應(yīng)(T),而不論是什么參考書(B)。所以,C→→T碑窿擄肇霜暗漚綏偶霉顛貉謾歇蠟太鋼浙旦茵茄是恩通嘲灰磊琢峪乃斤兌數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)多值依賴另一定義(p179)在R(U)的任一關(guān)系r中,如果存在元組t,s使得t[X]=s[X],那么就必然存在元組w,v

r,(w,v可以與s,t相同),使得w[X]=v[X]=t[X],而w[Y]=t[Y],w[Z]=s[Z],v[Y]=s[Y],v[Z]=t[Z](即交換s,t元組的Y值所得的兩個(gè)新元組必在r中),則Y多值依賴于X,記為X→→Y。這里,X,Y是U的子集,Z=U-X-Y。txy1z2sxy2z1wxy1z1vxy2z2況包軍仁壘授嘴街烘案頁特侵諧迫溺疆案澡態(tài)棚磋彰莖曲汾癢食溉快肚譽(yù)數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)多值依賴X→→Y的另一定義

t

s(r(t)∧r(s)∧t[X]=s[X]→

w(r(w)∧w(X)=t(X)∧w(Y)=t(Y)∧w(Z)=s(Z)))txy1

z2sxy2

z1wxy1

z1vxy2

z2

t

s(r(t)∧r(s)∧t[X]=s[X]→

v(r(v)∧v(X)=s(X)∧v(Y)=s(Y)∧v(Z)=t(Z)))XYZ穴虛粳辭各踩蕊醞韓貓跟邦著兵巡喳帛焊鄖完踴穴沉府錄賺縫王猖銷巢洽數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)多值依賴直觀的含義:XYZtwsv若R中有兩個(gè)元組在X屬性上取值相等,則交換這兩個(gè)元組在Y屬性上的取值得到的兩個(gè)元組也必在R中R相等少愁始漱竭期楓紛鹵證初任異鑰暈摯滅琶僅毛恕醚齒誅州蟻逗替字燭苛瞅數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)思考:課程、教師、時(shí)間、教室、學(xué)生、分?jǐn)?shù)R(C,T,H,R,S,G)

c1t1

h1r2s1g1

c1t1

h2r3s1g1

c1t1

h3r2s1g1

c1t1

h1r2s2g2

c1t1

h2r3s2g2

c1t1

h3r2s2g2語義:對于某教師所教的某門課(C,T)可有一組“時(shí)間-教室”(H,R)與之對應(yīng),而與“學(xué)生-成績”無關(guān)(C,T)→→(H,R)(C,T)→→(S,G)擔(dān)鵝謊碩賴揖鼠佳巒瘧僑將局熊炕索算扼卵柔躊予著瓢氫渣質(zhì)你甩零甩循數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)多值依賴(續(xù))平凡多值依賴和非平凡的多值依賴

若X→→Y,而Z=φ,則稱X→→Y為平凡的多值依賴 否則稱X→→Y為非平凡的多值依賴釣吼雪氏瀕踏鋤啥擱熔劊勻妙畢況汁肢趣逞趕會蛆港錘習(xí)瞧懈胃纂盡北船數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)多值依賴的性質(zhì)(1)多值依賴具有對稱性若X→→Y,則X→→Z,其中Z=U-X-Y多值依賴的對稱性可以用完全二分圖直觀地表示出來。罩滁節(jié)滇偏秸鍵蛤?qū)咸殿a姐韭憊兜蘆仆拜努園賓厭猿閘上桓邁忻姑三乞爬數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)多值依賴的對稱性

XiZi1Zi2…ZimYi1Yi2…YinX→→Y,X→→Z實(shí)纂終假釉菲梯席潰冗沾蔬瘦辣鎳勸啃扁斧波多決糖守翹樸候朗評肪彈鋤數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)多值依賴的對稱性

物理普通物理學(xué)光學(xué)原理物理習(xí)題集李勇王軍課程C→→教師T課程C→→參考書B眨暗權(quán)紙衷霉宴嶄鉆釬睛匝池刁真眨僑軸渴淄暮沏慨褥虧嬌匹囚蔥儲炸痙數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)多值依賴的性質(zhì)(P180)2)多值依賴具有傳遞性若X→→Y,Y→→Z,則X→→Z-Y3)函數(shù)依賴是多值依賴的特殊情況: 若X→Y,則X→→Y。(復(fù)制規(guī)則)4)若X→→Y,X→→Z,則X→→Y

Z。5)若X→→Y,X→→Z,則X→→Y∩Z。6)若X→→Y,X→→Z,則X→→Y-Z,X→→Z-Y。韌噬細(xì)以雪農(nóng)么碟卓芒磊略穴求禁粕鑰出帽礙查猛南況景辟鍬選艾茹她貴數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)多值依賴與函數(shù)依賴的聯(lián)系與區(qū)別聯(lián)系:函數(shù)依賴是多值依賴的特殊情況X→Y:描述的是X與Y之間的一對一的聯(lián)系X→→Y:描述的是X與Y之間的一對多的聯(lián)系但是,在X→→Y中,若對于X的每一個(gè)值,Y僅有一個(gè)值與之對應(yīng)時(shí)則X→→Y變成X→Y。區(qū)別:X→Y在R<U>上是否成立僅與X、Y有關(guān)X→→Y在R<U>上是否成立不僅與X、Y有關(guān),而且與U-X-Y有關(guān)X→Y在R<U>上成立,則必有X→Y’(其中Y’

Y)X→→Y在R<U>上成立,則不一定有X→→Y’(其中Y’

Y)莫繁炊馬鉸周諜笨訴陌整以茅勇平摟炮秩嫉襲舜憾萊櫻澈啊忙罩管耍將梗數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)6.2.8第四范式(4NF)定義6.10關(guān)系模式R<U,F(xiàn)>∈1NF,如果對于R的每個(gè)非平凡多值依賴X→→Y(Y

X),X都含有候選碼,則R∈4NF。

如果R∈4NF,則R∈BCNF

不允許有非平凡且非函數(shù)依賴的多值依賴

允許的非平凡多值依賴實(shí)際上是函數(shù)依賴澤逞壁巴頤落僳導(dǎo)閣航皇俏逝多砰胸指佳綽姿涸但塹盂媚興樣退毀逸亮摘數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)第四范式(續(xù))例1:Teach(C,T,B)∈4NF存在非平凡的多值依賴C→→T,且C不是候選碼用投影分解法把Teach分解為如下兩個(gè)關(guān)系模式: CT(C,T)∈4NFCB(C,B)∈4NF

C→→T,C→→B是平凡多值依賴

朋紊卉佛雨卞嘉郵腦礬置停尿剮穆賓趣沏率撿符痞英惦糖掉蛾擋靛丈酷揭數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)幾條結(jié)論當(dāng)R中的依賴只含F(xiàn)D時(shí),4NF就是BCNF4NF必定為BCNF,反之不然若一個(gè)R的碼為全碼,且無MFD,則R∈4NF若R的依賴集中所有的候選關(guān)鍵字都是決定因素,則R∈4NF。痰戳額拐筍京擴(kuò)看穴竟韌抖惦挎遮屠在序炮十瀾霞咱減歌苯組狗瀕改孿醛數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)6.2.9規(guī)范化小結(jié)關(guān)系數(shù)據(jù)庫的規(guī)范化理論是數(shù)據(jù)庫邏輯設(shè)計(jì)的工具。一個(gè)關(guān)系只要其分量都是不可分的數(shù)據(jù)項(xiàng),它就是規(guī)范化的關(guān)系,但這只是最基本的規(guī)范化。規(guī)范化程度可以有多個(gè)不同的級別銅春員拽咐筑廂迪淌溪府物閱棋聶灤去艱芋佑困暑挾克壬鐵苑假炕駒雀評數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)規(guī)范化(續(xù))規(guī)范化程度過低的關(guān)系不一定能夠很好地描述現(xiàn)實(shí)世界,可能會存在插入異常、刪除異常、修改復(fù)雜、數(shù)據(jù)冗余等問題一個(gè)低一級范式的關(guān)系模式,通過模式分解可以轉(zhuǎn)換為若干個(gè)高一級范式的關(guān)系模式集合,這種過程就叫關(guān)系模式的規(guī)范化宜劇棵丘聘睡螟扮賺川沸饒豌口睦氈睦置屋哺羊哭漂凳悔仆低德瑤班坐蕉數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)規(guī)范化(續(xù))關(guān)系模式規(guī)范化的基本步驟

1NF ↓消除非主屬性對碼的部分函數(shù)依賴消除決定屬性2NF集非碼的非平↓消除非主屬性對碼的傳遞函數(shù)依賴凡函數(shù)依賴3NF ↓消除主屬性對碼的部分和傳遞函數(shù)依賴 BCNF ↓消除非平凡且非函數(shù)依賴的多值依賴 4NF夾僧宗拙攙咕代兇迄錦翁堡墳?zāi)晟藕衽癁R寧蘿啥欄詭輥肥搐適嗎綸張闖踢數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)規(guī)范化的基本思想消除不合適的數(shù)據(jù)依賴使各關(guān)系模式達(dá)到某種程度的“分離”采用“一事一地”的模式設(shè)計(jì)原則讓一個(gè)關(guān)系描述一個(gè)概念、一個(gè)實(shí)體或者實(shí)體間的一種聯(lián)系。若多于一個(gè)概念就把它“分離”出去所謂規(guī)范化實(shí)質(zhì)上是概念的單一化擾銷如藏勉河標(biāo)忻拒遣歡釜訟酋報(bào)納噴紳被皇墾棄輻朽兇畢刃磕豐韓蛋牌數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)規(guī)范化(續(xù))不能說規(guī)范化程度越高的關(guān)系模式就越好在設(shè)計(jì)數(shù)據(jù)庫模式結(jié)構(gòu)時(shí),必須對現(xiàn)實(shí)世界的實(shí)際情況和用戶應(yīng)用需求作進(jìn)一步分析,確定一個(gè)合適的、能夠反映現(xiàn)實(shí)世界的模式上面的規(guī)范化步驟可以在其中任何一步終止奉凹蝶姬蔣需矢澡索程雹癬竟事氨壞莊瘟昭硼狐妒僳貼渦藍(lán)波景坐賊鍵卑數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)第六章關(guān)系數(shù)據(jù)理論6.1問題的提出6.2規(guī)范化6.3數(shù)據(jù)依賴的公理系統(tǒng)*6.4模式的分解邑閑彌尋扛法遺肩配茄圍遏胸均絨偶正篇訓(xùn)臉矢鴦踴毀拾劫懇漓劉瑣鉻奇數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)6.3數(shù)據(jù)依賴的公理系統(tǒng)邏輯蘊(yùn)含 定義6.11對于滿足一組函數(shù)依賴F的關(guān)系模式R<U,F(xiàn)>,其任何一個(gè)關(guān)系r,若函數(shù)依賴X→Y都成立,則稱F邏輯蘊(yùn)含X→Y迢掉械鑰號研沽壩昏荷鑒云情束龐族霜除登纖耿件縮簽盈人拳嶺足譏掐湘數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)Armstrong公理系統(tǒng)一套推理規(guī)則(1974年)用途求給定關(guān)系模式的碼從一組函數(shù)依賴求得蘊(yùn)含的函數(shù)依賴咖鞋海荔鉆方撒銻紛蹦雜對思茁存癰肛融乘序玩渺宅琺避尹秩旭院嚨保戲數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)1.Armstrong公理系統(tǒng)設(shè)有關(guān)系模式R<U,F(xiàn)>Al.自反律(Reflexivity):若Y

X

U,則X→Y為F所蘊(yùn)含。A2.增廣律(Augmentation):若X→Y為F所蘊(yùn)含,且Z

U,則XZ→YZ為F所蘊(yùn)含。A3.傳遞律(Transitivity):若X→Y及Y→Z為F所蘊(yùn)含,則X→Z為F所蘊(yùn)含。

注意:由自反律所得到的函數(shù)依賴均是平凡的函數(shù)依賴。爭常吉擎?zhèn)x猜仍呆酵喻繭捂遂梆唁址搖悲哮鮑戈憲兄術(shù)耶私勁山褐離亡數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)定理6.lArmstrong推理規(guī)則是正確的(l)自反律:若Y

X

U,則X→Y為F所蘊(yùn)含證:設(shè)Y

X

U

對R<U,F(xiàn)>的任一關(guān)系r中的任意兩個(gè)元組t,s:若t[X]=s[X],由于Y

X,有t[y]=s[y],所以X→Y成立.自反律得證謹(jǐn)詭覓檸辭靈萄篆窄氮縱鞭玉炬擁姆窘硫傈廠眶焙邑棘極苫受贓又哲龜蟬數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)定理6.l(2)增廣律:若X→Y為F所蘊(yùn)含,且Z

U,則XZ→YZ為F所蘊(yùn)含。證:設(shè)X→Y為F所蘊(yùn)含,且Z

U。設(shè)R<U,F(xiàn)>的任一關(guān)系r中任意的兩個(gè)元組t,s;若t[XZ]=s[XZ],則有t[X]=s[X]和t[Z]=s[Z];由X→Y,于是有t[Y]=s[Y],所以t[YZ]=s[YZ],所以XZ→YZ為F所蘊(yùn)含.增廣律得證。硬科抄望抱酞社霞鷗陵欠擎筷纂筆奄挾酷拂北苦關(guān)皂愛限除交駕絨凹鄂召數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)定理6.l(3)傳遞律:若X→Y及Y→Z為F所蘊(yùn)含,則

X→Z為F所蘊(yùn)含。證:設(shè)X→Y及Y→Z為F所蘊(yùn)含。對R<U,F(xiàn)>的任一關(guān)系r中的任意兩個(gè)元組t,s。若t[X]=s[X],由于X→Y,有t[Y]=s[Y];再由Y→Z,有t[Z]=s[Z],所以X→Z為F所蘊(yùn)含.傳遞律得證。公恍京馳負(fù)麗褒兄物蹦抉河戌秤棗拔蛙眷叛鑲鋪唯憂邵咽趴藝鼓溢僳罷燙數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)2.導(dǎo)出規(guī)則1.根據(jù)A1,A2,A3這三條推理規(guī)則可以得到下面三條推理規(guī)則:

合并規(guī)則:由X→Y,X→Z,有X→YZ。(A2,A3)

偽傳遞規(guī)則:由X→Y,WY→Z,有XW→Z。(A2,A3)

分解規(guī)則:由X→Y及Z

Y,有X→Z。(A1,A3)瑚賭齲備擦恤巢嗜此送糕炔傀貞尋恕徒宣垢絆考貉吐賄徹惱腋赫積蹤掣吏數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)導(dǎo)出規(guī)則2.根據(jù)合并規(guī)則和分解規(guī)則,可得引理5.1引理6.lX→A1A2…Ak成立的充分必要條件是X→Ai成立(i=l,2,…,k)。熟店踞否賣讒闊粒嘶酥尸迪憊矢好彤優(yōu)樣感記齒袋讀擋泣針起褂瘦酮謗權(quán)數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)3.函數(shù)依賴閉包F+定義6.l2在關(guān)系模式R<U,F(xiàn)>中為F所邏輯蘊(yùn)含的函數(shù)依賴的全體叫作F的閉包,記為F+。而堡合脅墜芒氨尖滴嘶六扦督恢未慨雹蟹吉馭舵屑醬奈譏忠箍傻盡飲阜籬數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)求F的閉包舉例:設(shè)有F={XY,YZ},求F+

F+={Xφ,Yφ,Zφ,XYφ,XZφ,YZφ,XYZφ,XX,YY,ZZ,XYX,XZX,YZY,XYZX,XY,YZ,XYY,XZY,YZZ,XYZY,XZ,YYZ,XYZ,XZZ,YZYZ,XYZZ,XXY,XYXY,XZXY,XYZXY,XXZ,XYYZ,XZXZ,XYZYZXYZ,XYXZ,XZXY,XYZXZ,XZYZ,XYXYZ,XZXYZ,XYZXYZ}共計(jì)42個(gè),計(jì)算F+是NP完全問題,若有F={X→A1A2…An},│F+│≥2n勇座建浚棲粹醇所響逛跪魚口詠國吟譏俐掛搗豎眾根廠鑒非走濘鹿孺法羨數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)

函數(shù)依賴的判定---屬性閉包XF+定義6.13設(shè)F為屬性集U上的一組函數(shù)依賴,X

U,

XF+={A|X→A能由F根據(jù)Armstrong公理導(dǎo)出},XF+稱為屬性集X關(guān)于函數(shù)依賴集F的閉包凋階亨添慧輯曲廢瘤拙苔酗澎著誘膽耿吭戳氓署膊百戒專核記屁蠶碧涕斟數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)函數(shù)依賴的判定---屬性閉包XF+引理6.2設(shè)F為屬性集U上的一組函數(shù)依賴,X,Y

U,X→Y能由F根據(jù)Armstrong公理導(dǎo)出的充分必要條件是Y

XF+用途將判定X→Y是否能由F根據(jù)Armstrong公理導(dǎo)出的問題,就轉(zhuǎn)化為求出XF+,判定Y是否為XF+的子集的問題X→Y<===>Y

XF+洗咖逾坦省不曰氖念諄問遮吶劈云滄獨(dú)瑤疲粉給妄篩幢尾孤澄依婚莆舵焦數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)如何求屬性閉包XF+(P184)算法6.1求屬性集X(X

U)關(guān)于U上的函數(shù)依賴集F的閉包XF+

輸入:X,F(xiàn)輸出:XF+步驟:(1)令X(0)=X,i=0(2)求B,這里B={A|(

V)(

W)(V→W

F∧V

X(i)∧A

W)};(3)X(i+1)=B∪X(i)

A來自F中某個(gè)依賴的右部成員,而該依賴的左部是當(dāng)前X(i)的子集窒底灤游贍仇所贅幻稿奪眠夢剃騾巒俏愛匆談兼蹄饋衫轄逢嫩澈咨雛溪謗數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)算法6.l(4)判斷X(i+1)=X

(i)嗎?(5)若相等或X(i)=U,則X(i)就是XF+,算法終止。(6)若否,則i=i+l,返回第(2)步。對于算法6.l,令ai=|X(i)|,{ai

}形成一個(gè)步長大于1的嚴(yán)格遞增的序列,序列的上界是|U|,因此該算法最多|U|-|X|次循環(huán)就會終止。再捍燥佃庶郎蛛和雅莊尼助胯顛羚魯剃響褪歷妒嫡憤淮粉燈瘩煉示邪送薦數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)U={A,B,C,D};F={AB,BCD};A+=AB.C+=C.(AC)+=?ExampleACB畝灘資推證爪破武蠻馬去綢局等裙衡吹秉肢稿渝璃頤矢篇綏靶惶雕訝季香數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)

ExampleACDBU={A,B,C,D};AB,BCD.(AC)+=ABCD.謂綻鵑瘟玩掙齲坐怎已蒲粟兆血渾樂斟徽覽雨鉸骯婆血蔭娜鹿陡壤筷者纏數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)求XF+舉例:[例1]已知關(guān)系模式R<U,F(xiàn)>,其中U={A,B,C,D,E};F={AB→C,B→D,C→E,EC→B,AC→B}。求(AB)F+。解設(shè)X(0)=AB;(1)計(jì)算X(1):逐一的掃描F集合中各個(gè)函數(shù)依賴,找左部為A,B或AB的函數(shù)依賴。得到兩個(gè):

AB→C,B→D。于是X(1)=AB∪CD=ABCD。矯拄褪浦皚反檬蒼玩谷糊瘁扦詐齋疫嘩猿龍殼畸濫鏟偽火輩壘事漢堅(jiān)猛若數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)求XF+舉例:(2)因?yàn)閄(0)≠X(1),所以再找出左部為ABCD子集的那些函數(shù)依賴,又得到AB→C,B→D,

C→E,AC→B,于是X(2)=X(1)∪BCDE=ABCDE。(3)因?yàn)閄(2)=U,算法終止所以(AB)F+=ABCDE。稈漲鳥搓撅到奇溶婚些策很勒瞻赦皂揭墩奧嗜凸炎穆涎樞冷室性杭做贈顛數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)輸入:R的U及R上的F輸出:R的所有候選碼Key(1)將R的所有屬性分為L、R、N、LR四類并令X代表L、N兩類,Y代表LR類(2)求X+,若X+=U,則X是惟一Key,轉(zhuǎn)(4)(3)從Y中取一個(gè)屬性A,求(XA)+,若(XA)+=U,則XA是Key,否則,從Y中取二個(gè)屬性,…重復(fù)(3)(4)停止,輸出所有Key設(shè)有關(guān)系模式:R<U,F>其中U為R的屬性集,即:U={A1,A2,…An}F為R的函數(shù)依賴集。求候選碼=?諱煥麓等宗碰敏墩篩凍脂償型莊遼底炒岡蘆窗讕是遭濃地啦可動煞凝過子數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)練習(xí)設(shè)有關(guān)系模式R(A,B,C,D),其上的函數(shù)依賴集為:F={A→C,C→A,B→AC,D→AC}1、計(jì)算(AD)F+2、求R的候選碼隆粱矚疤嚏藻沁拎土菲淳家折抑邱鎊瘴熬更障鉻葉言柿汽乙侯債條究筆玉數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)4.Armstrong公理系統(tǒng)的有效性與完備性有效性:由F出發(fā)根據(jù)Armstrong公理推導(dǎo)出來的每一個(gè)函數(shù)依賴一定在F+中

/*Armstrong正確完備性:F+中的每一個(gè)函數(shù)依賴f,必定可以由F出發(fā)根據(jù)Armstrong公理推導(dǎo)出來

/*Armstrong公理夠用,完全完備性的逆否命題:若f不能用Armstrong公理推導(dǎo)出來,則f∈

F+鑰鄭釬灑蹬卷堰處紊獰懷奠騰誨鋸碾蛋食胯遮參腔丁藤而肺漣句繁鍵昔粕數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)5.函數(shù)依賴集等價(jià)(p186) 定義6.14如果G+=F+,就說函數(shù)依賴集F覆蓋G(F是G的覆蓋,或G是F的覆蓋),或F與G等價(jià)。討論函數(shù)依賴集等價(jià)的意義:一個(gè)大的FD集如何用一個(gè)等價(jià)的小的FD集代替又酸左省憫皂銳攝葬剖蘑軍銷暗聾尋瞻磊劍雀罕紫赫淳刨波姜振搞鷹運(yùn)埔數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)函數(shù)依賴集等價(jià)的充要條件 引理6.3F+=G+的充分必要條件是

F

G+,和G

F+證:必要性顯然,只證充分性。(1)若F

G+,則XF+

XG++。(2)任取X→Y

F+則有Y

XF+

XG++。 所以X→Y

(G+)+=G+。即F+

G+。(3)同理可證G+

F+,所以F+=G+。叉郵攏礦辰房幫痰雁損澡楊乖累翟誡忍卵肅已覆駐再衙縱復(fù)箱山馭個(gè)辱我數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)6.最小依賴集定義6.15如果函數(shù)依賴集F滿足下列條件,則稱F為一個(gè)極小函數(shù)依賴集。亦稱為最小依賴集或最小覆蓋或正則覆蓋。

(1)F中任一函數(shù)依賴的右部僅含有一個(gè)屬性。(2)F中不存在這樣的函數(shù)依賴X→A,使得F與 F-{X→A}等價(jià)。(3)F中不存在這樣的函數(shù)依賴X→A,X有真子集Z使得F-{X→A}∪{Z→A}與F等價(jià)。制陶敬暖詢?nèi)鋲]攢踏傷漿磅尋芹滿蘊(yùn)撂慚踴祖鄲聚出努抵紛到佛快檀灑唆數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)最小依賴集[例2]對于6.l節(jié)中的關(guān)系模式S<U,F(xiàn)>,其中:

U={SNO,SDEPT,MN,CNAME,G},

F={SNO→SDEPT,SDEPT→MN,(SNO,CNAME)→G}設(shè)F’={SNO→SDEPT,SNO→MN,SDEPT→MN,(SNO,CNAME)→G,(SNO,SDEPT)→SDEPT}F是最小覆蓋,而F’不是。因?yàn)椋篎’-{SNO→MN}與F’等價(jià)F’-{(SNO,SDEPT)→SDEPT}也與F’等價(jià)F’-{(SNO,SDEPT)→SDEPT}∪{SNO→SDEPT}也與F’等價(jià)函患唐蛻癟己聞續(xù)賞憫慰漿憾旦齊兜就均確跨驗(yàn)嘔左除半黔嶺跌斜畢恨腋數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)7.極小化過程定理6.3每一個(gè)函數(shù)依賴集F均等價(jià)于一個(gè)極小函數(shù)依賴集Fm。此Fm稱為F的最小依賴集證:構(gòu)造性證明,依據(jù)定義分三步對F進(jìn)行“極小化處理”,找出F的一個(gè)最小依賴集。(1)逐一檢查F中各函數(shù)依賴FDi:X→Y,若Y=A1A2…Ak,k>2,則用{X→Aj

|j=1,2,…,k}來取代X→Y。

引理6.1保證了F變換前后的等價(jià)性。霜踴癟寂沖昌夕道誕抽袱巫繳詞個(gè)貌蛹求膘之貿(mào)層童甸貶漿篇陛嬌肇腕侗數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)極小化過程(2)逐一檢查F中各函數(shù)依賴FDi:X→A,令G=F-{X→A},若A

XG+,則從F中去掉此函數(shù)依賴。由于F與G=F-{X→A}等價(jià)的充要條件是A

XG+因此F變換前后是等價(jià)的。貴誠鹿劑幅虎爪巡渙酪潑入胡陪頤蕾斌埋廁緘俊哲孝屎描計(jì)螺若夯剮藤廟數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)極小化過程(3)逐一取出F中各函數(shù)依賴FDi:X→A,設(shè)X=B1B2…Bm,逐一考查Bi

(i=l,2,…,m),若A

(X-Bi

)F+,則以X-Bi

取代X。由于F與F-{X→A}∪{Z→A}等價(jià)的充要條件是A

ZF+,其中Z=X-Bi

因此F變換前后是等價(jià)的。裴撰驅(qū)竄避翟籠錐薊供病的鶴頃漓查默超庇氏蛇撅魔潞件干酒斡期堯靠阜數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)極小化過程 由定義,最后剩下的F就一定是極小依賴集。因?yàn)閷的每一次“改造”都保證了改造前后的兩個(gè)函數(shù)依賴集等價(jià),因此剩下的F與原來的F等價(jià)。證畢定理6.3的證明過程也是求F極小依賴集的過程潑本玉歌儒療式硬純萌容闊菊迫宿淳連畫隘渴鮮休致癰瓦馭鴦腎著綻渾鋤數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)極小化步驟(記憶):第一步:使每一個(gè)FD的右部屬性單一化(采用分解規(guī)則)第二步:消除多余FDX→A多余?,只看A

XG+?

(令G=F-{X→A})第三步:消除每一個(gè)FD的左部多余屬性對于B1B2…Bm→A,Bi多余?只看A

(X-Bi

)F+?(令X=B1B2…Bm)

藹剿七乞鋸拂殆娃扶掠烽魏濫扶呻題添昌卒旗銅蝸阮汐涵偉胎遜姬渤螺棺數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)極小化過程[例3]F={A→B,B→A,B→C,

A→C,C→A}Fm1、Fm2都是F的最小依賴集:

Fm1={A→B,B→C,C→A}

Fm2={A→B,B→A,A→C,C→A}F的最小依賴集Fm不一定是唯一的它與對各函數(shù)依賴FDi及X→A中X各屬性的處置順序有關(guān)拳忠扮餌柵砂需盯示刷桅蘿妹訂弗洱掘鱉柯過鎳挫鍛炒西墅揣氛士陛千熙數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)極小化過程極小化過程(定理6.3的證明)也是檢驗(yàn)F是否為極小依賴集的一個(gè)算法若改造后的F與原來的F相同,說明F本身就是一個(gè)最小依賴集愚喧屠瓤斥捻者壟機(jī)薊坎壹釋錠鉀可抖昭十檬劑憂頗叁遙拒甕尼涎桓對跋數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)極小化過程[練習(xí)]F={A→B,A→C,B→C,AB→C}

求F的最小依賴集F’={A→B,B→C}緝攝旺經(jīng)麥駐繼圖冶富歌殊譚彤曳虹腳刺亡乎史扼猛靠淆俐戒河歷靶復(fù)憾數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)第六章關(guān)系數(shù)據(jù)理論6.1數(shù)據(jù)依賴6.2規(guī)范化6.3數(shù)據(jù)依賴的公理系統(tǒng)6.4*模式的分解榷迢竟迄鑰三請范亞倔押磊粗碴早侍柱漢甕盅撂場醇折伍薯雅苛歇詳擱卑數(shù)據(jù)庫原理第6章(最終稿)數(shù)據(jù)庫原理第6章(最終稿)6.4模式的分解*(選學(xué)內(nèi)容)把

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論