第7章 關(guān)系數(shù)據(jù)庫規(guī)范化理論復(fù)習(xí)題_第1頁
第7章 關(guān)系數(shù)據(jù)庫規(guī)范化理論復(fù)習(xí)題_第2頁
第7章 關(guān)系數(shù)據(jù)庫規(guī)范化理論復(fù)習(xí)題_第3頁
第7章 關(guān)系數(shù)據(jù)庫規(guī)范化理論復(fù)習(xí)題_第4頁
第7章 關(guān)系數(shù)據(jù)庫規(guī)范化理論復(fù)習(xí)題_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、.第7章 關(guān)系規(guī)范化理論一、單項選擇題1關(guān)系規(guī)范化中的刪除操作異常是指 ,插入操作異常是指 。 a不該刪除的數(shù)據(jù)被刪除 b不該插入的數(shù)據(jù)被插入 c應(yīng)該刪除的數(shù)據(jù)未被刪除 d應(yīng)該插入的數(shù)據(jù)未被插入 答案:a d2設(shè)計性能較優(yōu)的關(guān)系模式稱為規(guī)范化,規(guī)范化主要的理論依據(jù)是 。 a關(guān)系規(guī)范化理論 b關(guān)系運算理論 c關(guān)系代數(shù)理論 d數(shù)理邏輯 答案:a3規(guī)范化理論是關(guān)系數(shù)據(jù)庫進行邏輯設(shè)計的理論依據(jù)。根據(jù)這個理論,關(guān)系數(shù)據(jù)庫中的關(guān)系必須滿足:其每一屬性都是 。 a互不相關(guān)的 b不可分解的 c長度可變的 d互相關(guān)聯(lián)的 答案:b4關(guān)系數(shù)據(jù)庫規(guī)范化是為解決關(guān)系數(shù)據(jù)庫中 問題而引入的。 a插入、刪除和數(shù)據(jù)冗余 b提

2、高查詢速度 c減少數(shù)據(jù)操作的復(fù)雜性 d保證數(shù)據(jù)的安全性和完整性 答案:a5規(guī)范化過程主要為克服數(shù)據(jù)庫邏輯結(jié)構(gòu)中的插入異常,刪除異常以及 的缺陷。 a數(shù)據(jù)的不一致性 b結(jié)構(gòu)不合理 c冗余度大 d數(shù)據(jù)丟失 答案:c6當關(guān)系模式r(a,b)已屬于3nf,下列說法中 是正確的。 a它一定消除了插入和刪除異常 b仍存在一定的插入和刪除異常 c一定屬于bcnf da和c都是答案:b7. 關(guān)系模式1nf是指_。a. 不存在傳遞依賴現(xiàn)象 b. 不存在部分依賴現(xiàn)象c不存在非主屬性 d. 不存在組合屬性答案:d8. 關(guān)系模式中2nf是指_。a.滿足1nf且不存在非主屬性對關(guān)鍵字的傳遞依賴現(xiàn)象b.滿足1nf且不存在

3、非主屬性對關(guān)鍵字部分依賴現(xiàn)象c.滿足1nf且不存在非主屬性d.滿足1nf且不存在組合屬性答案:b9. 關(guān)系模式中3nf是指_。a.滿足2nf且不存在非主屬性對關(guān)鍵字的傳遞依賴現(xiàn)象b.滿足2nf且不存在非主屬性對關(guān)鍵字部分依賴現(xiàn)象精品.c.滿足2nf且不存在非主屬性d.滿足2nf且不存在組合屬性答案:a10關(guān)系模型中的關(guān)系模式至少是 。 a1nf b2nf c3nf dbcnf 答案:a11關(guān)系模式中,滿足2nf的模式, 。 a可能是1nf b必定是1nf c必定是3nf d必定是bcnf 答案:b12xy為平凡函數(shù)依賴是指_。axy bxy cx=y dxy答案:c13若關(guān)系模式r1nf,且r

4、中若存在xy,則x必含關(guān)鍵字,稱該模式_。a.滿足3nf b.滿足bcnf c.滿足2nf d.滿足1nf 答案:b14在關(guān)系模式中,如果屬性a和b存在1對1的聯(lián)系,則說 。 aab bba cab d以上都不是 答案:c15候選關(guān)鍵字中的屬性稱為 。 a非主屬性 b主屬性 c復(fù)合屬性 d關(guān)鍵屬性 答案:b16關(guān)系模式中各級模式之間的關(guān)系為 。 a3nf2nf1nf b3nf1nf2nf c1nf2nf3nf d2nflnf3nf 答案:a17消除了部分函數(shù)依賴的1nf的關(guān)系模式,必定是 。 a1nf b2nf c3nf dbcnf 答案:b18關(guān)系模式的候選關(guān)鍵字可以有 ,主關(guān)鍵字有 。 a

5、0個 b1個 c1個或多個 d多個 答案:c b19候選關(guān)鍵字中的屬性可以有 。 a0個 b1個 c1個或多個 d多個 答案:c20關(guān)系模式的分解 。 a惟一 b不惟一 答案:b21什么樣的關(guān)系模式是嚴格好的關(guān)系模式_。a優(yōu)化級別最高的關(guān)系模式 b優(yōu)化級別最高的關(guān)系模式c符合3nf要求的關(guān)系模式 d視具體情況而定答案:d22按照規(guī)范化設(shè)計要求,通常以關(guān)系模式符合_為標準。a1nf b2nf c3nf dbcnf答案:c精品.23設(shè)某關(guān)系模式s(sno,cno,g,tn,d),其中sno表示學(xué)號,cno表示課程號,g表示成績,tn表示教師姓名,d表示系名。屬性間的依賴關(guān)系為:(sno,cno)g

6、,cnotn,tnd。則該關(guān)系模式最高滿足_。a1nf b2nf c3nf dbcnf答案:a24設(shè)某關(guān)系模式s(sno,cno,g,tn,d),其屬性的含義及屬性間的依賴關(guān)系同23題,若將s分解為s1(sno,cno,g)、s2(cno,tn)、s3(tn,d),則s1最高滿足_、s2最高滿足_、s3最高滿足_。a1nf b2nf c3nf dbcnf答案:d d d25設(shè)某關(guān)系模式r(abcd),函數(shù)依賴bd,abc,則r最高滿足_。a1nf b2nf c3nf dbcnf答案:a(ab為key)26設(shè)某關(guān)系模式r(abc),函數(shù)依賴ab,ba,ac,則r最高滿足_。a1nf b2nf c

7、3nf dbcnf答案:c(a為key)27設(shè)某關(guān)系模式r(abc),函數(shù)依賴ab,ba,ca,則r最高滿足_。a1nf b2nf c3nf dbcnf答案:b(c為key)28設(shè)某關(guān)系模式r(abcd),函數(shù)依賴ac,db,則r最高滿足_。a1nf b2nf c3nf dbcnf答案:a(ad為key)29設(shè)有關(guān)系模式w(c,p,s,g,t,r),其中各屬性的含義是:c為課程,p為教師,s為學(xué)生,g為成績,t為時間,r為教室,根據(jù)定義有如下函數(shù)依賴集: fcg,(s,c)g,(t,r)c,(t,p)r,(t,s)r 關(guān)系模式w的一個關(guān)鍵字是 ,w的規(guī)范化程度最高達到 。若將關(guān)系模式w分解為3

8、個關(guān)系模式w1(c,p),w2(s,c,g),w3(s,t,r,c),則w1的規(guī)范化程度最高達到 ,w2的規(guī)范化程度最高達到 ,w3的規(guī)范化程度最高達到 。 a(s,c) b(t,r) c(t,p) d(t,s) e(t,s,p) a1nf b2nf c3nf dbcnf e4nf答案:e b e e b二、填空題1關(guān)系規(guī)范化的目的是 。 答案:控制冗余,避免插入和刪除異常,從而增強數(shù)據(jù)庫結(jié)構(gòu)的穩(wěn)定性和靈活性2在關(guān)系a(s,sn,d)和b(d,cn,nm中,a的主鍵是s,b的主鍵是d,則d在s中稱為 。答案:外碼3對于非規(guī)范化的模式,經(jīng)過 轉(zhuǎn)變?yōu)?nf,將1nf經(jīng)過 轉(zhuǎn)變?yōu)?nf,將2nf經(jīng)過

9、 轉(zhuǎn)變?yōu)?nf。 答案:使屬性域變?yōu)楹唵斡?消除非主屬性對主關(guān)鍵字的部分依賴消除非主屬性對主關(guān)鍵字的傳遞依賴 4在一個關(guān)系r中,若每個數(shù)據(jù)項都是不可再分割的,那么r一定屬于精品. 。 答案:1nf51nf,2nf,3nf之間,相互是一種 關(guān)系。 答案:3nf2nf1nf6若關(guān)系為1nf,且它的每一非主屬性都 候選關(guān)鍵字,則該關(guān)系為2nf。 答案:不部分函數(shù)依賴于7在關(guān)系數(shù)據(jù)庫的規(guī)范化理論中,在執(zhí)行“分解”時,必須遵守規(guī)范化原則:保持原有的依賴關(guān)系和 。 答案:無損連接性三應(yīng)用題1理解并給出下列術(shù)語的定義函數(shù)依賴、部分函數(shù)依賴、完全函數(shù)依賴、傳遞函數(shù)依賴、候選碼、主碼、外碼、全碼、1nf、2nf

10、、3nf、bcnf。解:定義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。(即只要x上的屬性值相等,y上的值一定相等。)術(shù)語和記號:xy,但y不是x的子集,則稱xy是非平凡的函數(shù)依賴。若不特別聲明,總是討論非平凡的函數(shù)依賴。xy,但y是x的子集,則稱xy是平凡的函數(shù)依賴。若xy,則x叫做決定因子(determinant)。若xy,yx,則記作xy。若y不函數(shù)依賴于x,則記作x y。定義2:在r(u)中,如果 xy,并且對于x的任何一個

11、真子集x,都有x y,則稱y對x完全函數(shù)依賴,記作: x f y。 若xy,但y不完全函數(shù)依賴于x,則稱y對x部分函數(shù)依賴,記作:x py。如果xy(非平凡函數(shù)依賴,并且y/x)、yz,則稱z傳遞函數(shù)依賴于x。定義3:候選碼:設(shè)k為r(u,f)中的屬性或?qū)傩越M,若kfu,則k為r候選碼。(k為決定r全部屬性值的最小屬性組)。主碼:關(guān)系r(u,f)中可能有多個候選碼,則選其中一個作為主碼。全碼:整個屬性組是碼,稱為全碼(all-key) 。主屬性與非主屬性:包含在任何一個候選碼中的屬性 ,稱為主屬性(prime attribute) 。不包含在任何碼中的屬性稱為非主屬性(nonprime att

12、ribute)或非碼屬性(non-key attribute)。外碼:關(guān)系模式 r 中屬性或?qū)傩越Mx 并非 r的碼,但 x 是另一個關(guān)系模式的碼,則稱 x 是r 的外部碼(foreign key)也稱外碼。定義4:若關(guān)系模式r的每一個分量是不可再分的數(shù)據(jù)項,則關(guān)系模式r屬于第一范式(1nf)。定義5:若關(guān)系模式r1nf,且每一個非主屬性完全函數(shù)依賴于碼,則關(guān)系模式r2nf 。(即1nf消除了非主屬性對碼的部分函數(shù)依賴則成為2nf)。精品.定義6:關(guān)系模式r 中若不存在這樣的碼x、屬性組y及非主屬性z(z不是y的子集)使得xy,y x,y z成立,則稱r3nf。(若r3nf,則每一個非主屬性既不

13、部分依賴于碼也不傳遞依賴于碼。 )定義7:關(guān)系模式r1nf 。若xy且y不是x的子集時,x必含有碼,則rbcnf。2指出下列關(guān)系模式是第幾范式?并說明理由。 (1) r(x,y,z) fxyz (2) r(x,y,z) fyz,xzy (3) r(x,y,z) fyz,yx,xyz (4) r(x,y,z) fxy,xz (5) r(x,y,z) fxyz (6) r(w,x,y,z) fxz,wxy解:(1) r是bcnf。r候選關(guān)鍵字為xy,f中只有一個函數(shù)依賴,而該函數(shù)依賴的左部包含了r的候選關(guān)鍵字xy。(2) r是3nf。r候選關(guān)鍵字為xy和xz,r中所有屬性都是主屬性,不存在非主屬性

14、對的候選關(guān)鍵字的傳遞依賴。(3) r是bcnf。r候選關(guān)鍵字為x和y,xyz,xy,xz,由于f中有yz,yx,因此z是直接函數(shù)依賴于x,而不是傳遞依賴于x。又f的每一函數(shù)依賴的左部都包含了任一候選關(guān)鍵字,r是bcnf。(4) r是bcnf。r的候選關(guān)鍵字為x,而且f中每一個函數(shù)依賴的左部都包含了候選關(guān)鍵字x。(5) r是bcnf。r的候選關(guān)鍵字為xy,而且f中函數(shù)依賴的左部包含了候選關(guān)鍵字xy。(6) r是1nf。r的候選關(guān)鍵字為wx,則y,z為非主屬性,又由于xz,因此f中存在非主屬性對候選關(guān)鍵字的部分函數(shù)依賴。3設(shè)有關(guān)系模式r(u,f),其中: ua,b,c,d,e,p,fab,cp,e

15、a,ced 求出r的所有候選關(guān)鍵字。解:根據(jù)候選關(guān)鍵字的定義:如果函數(shù)依賴xu在r上成立,且不存在任何x x,使得xu也成立,則稱x是r的一個候選關(guān)鍵字。由此可知,候選關(guān)鍵字只可能由a,c,e組成,但有ea,所以組成候選關(guān)鍵字的屬性可能是ce。 計算可知:(ce)+=abcdep,即ceu精品.而:c+=cp,e+abe r只有一個候選關(guān)鍵字ce。補充知識:在關(guān)系模式r中為f所邏輯蘊含的函數(shù)依賴的全體叫作 f的閉包,記為f +。設(shè)f為屬性集u上的一組函數(shù)依賴,x u, xf+ = a|xa能由f 根據(jù)armstrong公理導(dǎo)出,xf+稱為屬性集x關(guān)于函數(shù)依賴集f 的閉包。armstrong公理

16、系統(tǒng):a1.自反律(reflexivity):若y x u,則x y為f所蘊含。a2.增廣律(augmentation):若xy為f所蘊含,且z u,則xzyz為f所蘊含。a3.傳遞律(transitivity):若xy及yz為f所蘊含,則xz為f所蘊含。根據(jù)a1,a2,a3這三條推理規(guī)則可以得到下面三條推理規(guī)則: 合并規(guī)則:由xy,xz,有xyz。 (a2, a3) 偽傳遞規(guī)則:由xy,wyz,有xwz。 (a2, a3) 分解規(guī)則:由xy及 zy,有xz。 (a1, a3)算法6.1 求屬性集x(x u)關(guān)于u上的函數(shù)依賴集f 的閉包xf+ 輸入:x,f輸出:xf+步驟:(1)令x(0)=

17、x,i=0(2)求b,這里b = a |($ v)( $ w)(vwfv x(i)a w);(3)x(i+1)=bx(i) (4)判斷x(i+1)= x (i)嗎?(5)若相等或x(i)=u , 則x(i)就是xf+ , 算法終止。(6)若否,則 i=i+l,返回第(2)步。舉例: 已知關(guān)系模式r,其中u=a,b,c,d,e;f=abc,bd,ce,ecb,acb。求(ab)f+ 。解 設(shè)x(0)=ab;精品.(1) 計算x(1),逐一掃描f集合中各函數(shù)依賴,找左部為a,b,或ab的函數(shù)依賴,得到兩個: abc,bd,于是x(1)=abcd=abcd。(2) x(0)x(1),所以再找出左部為

18、abcd子集的那些函數(shù)依賴,又得到ce,acb x(2)=x(1)be=abcde。 (3) x(2)=u,算法終止所以:(ab)f+ =abcde。4設(shè)有關(guān)系模式r(c,t,s,n,g),其上的函數(shù)依賴集: f=ct,csg,sn 求出r的所有候選關(guān)鍵字。解:根據(jù)候選關(guān)鍵字的定義,r的候選關(guān)鍵字只可能由f中各個函數(shù)依賴的左邊屬性組成,即c,s,所以組成候選關(guān)鍵字的屬性可能是cs。 計算可知:(cs)+=cgnst,即csu 而:c+=ct,s+=nsr只有一個候選關(guān)鍵字cs。5設(shè)有關(guān)系模式r(a,b,c,d,e),其上的函數(shù)依賴集: fabc,cde,bd,ea (1) 計算b+。 (2)

19、求出r的所有候選關(guān)鍵字。 解: (1) 令xb,x(0)b,x(1)=bd,x(2)bd,故b+bd。 (2) 根據(jù)候選關(guān)鍵字定義,r的候選關(guān)鍵字只可能由f中各個函數(shù)依賴的左邊屬性組成,即a,b,c,d,e,由于abc(ab,ac),bd,ea,故: 可除去a,b,c,d,組成候選關(guān)鍵字的屬性可能是e。 計算可知:e十a(chǎn)bcdee,即eu,e是一個候選關(guān)鍵字。 可除去a,b,e,組成候選關(guān)鍵字的屬性可能是cd。 計算可知:(cd)+=abcde,即cdu,但c+=c,d+d,cd是一個候選關(guān)鍵字。 可除去b,c,d,e,組成候選關(guān)鍵字的屬性可能是a。 計算可知:a+abcde,即au,a是一個

20、候選關(guān)鍵字。 可除去a,d,e,組成候選關(guān)鍵字的屬性可能是bc。精品. 計算可知:(bc)+=abcde,即cdu,但b+bd,c+c,bc是一個候選關(guān)鍵字。r的所有候選關(guān)鍵字是a,bc,cd,e。6設(shè)有關(guān)系模式r(u,f),其中: ua,b,c,d,e,fad,ed,db,bcd,dca (1) 求出r的候選關(guān)鍵字。 (2) 判斷ab,ae,ce,bcd,ac是否為無損連接分解?解: (1) (ce)+=abcde,則ceu,而c+c,e+debde,根據(jù)候選關(guān)鍵字定義,ce是r的候選關(guān)鍵字。(2) 的無損連接性判斷表如下表所示,由此判斷不具有無損連接性。riabcdeaba1a2aea1a

21、5cea3a5bcda2a3a4aca1a37設(shè)有關(guān)系模式r(a,b,c,d,e)及其上的函數(shù)依賴集fac,bd,cd,dec,cea,試問分解r1(a,d),r2(a,b),r3(b,e),r4(c,d,e),r5(a,e)是否為r的無損連接分解?解:p的無損連接性判斷結(jié)果表如下表所示,由此判斷不具有無損連接性。riabcdeada1a4aba1a2bea2a5cdea3a4a5aea1a58設(shè)有函數(shù)依賴集fabce,ac,gpb,epa,cdep,hbp,dhg,abcpg,計算屬性集d關(guān)于f的閉包d+。 解:令x=d,x(0)=d。在f中找出左邊是d子集的函數(shù)依賴,其結(jié)果是:dhg,x(

22、1)x(0)hg=dgh,顯然有x(1)x(0)。在f中找出左邊是dgh子集的函數(shù)依賴,未找到,則x(2)dgh。由于x(2)x(1),則:d+=doh9已知關(guān)系模式r的全部屬性集u=a,b,c,d,e,g及函數(shù)依賴集: fabc,ca,bcd,acdb,deg,bec,cgbd,ceag 求屬性集閉包(bd)+。精品. 解:令xbd,x(0)bd,x(1)bdeg,x(2)bcdeg,x(3)abcdeg,故(bd)+abcdeg。10設(shè)有函數(shù)依賴集f=dg,ca,cde,ab),計算閉包d+,c+,a+,(cd)+,(ad)+,(ac)+,(acd)+。解: 令xd,x(0)d,x(1)d

23、g,x(2)dg,故d+dg。 令xc,x(0)c,x(1)ac,x(2)abc,x(3)abc,故c+abc。 令xa,x(0)a,x(1)ab,x(2)ab,故a+ab。令xcd,x(0)cd,x(1)cdg,x(2)acdg,x(3)acdeg,x(4)abcdeg,故(cd)+=abcdeg。 令xad,x(0)ad,x(1)abd,x(2)abdg,x(3)abdg,故(ad)+abdg。 令xac,x(0)ac,x(1)abc,x(2)=abc,故(ac)+=abc。令xacd,x(0)=acd,x(1)=abcd,x(2)abcdg,x(3)abcdeg,故(acd)+abcde

24、g。11設(shè)有函數(shù)依賴集fabce,ac,gpb,epa,cdep,hbp,dh,abcpg,求與f等價的最小函數(shù)依賴集。解:(1) 將f中依賴右部屬性單一化: abc hbp abe dh f1= ac dg gpb abcp epa abcg cdep (2) 對于abc,由于有ac,則為多余的: abe hbp ac dh f2= gpb dg epa abcp cdep abcg (3) 通過分析沒有多余的依賴,則: abe hbp ac dh f3= gpb dg精品. epa abcp cdep abcg補充知識:如果函數(shù)依賴集f滿足下列條件,則稱f為一個極小函數(shù)依賴集。亦稱為最小依

25、賴集或最小覆蓋。 (1) f中任一函數(shù)依賴的右部僅含有一個屬性。 (2) f中不存在這樣的函數(shù)依賴xa,使得f與f-xa等價。 (3) f中不存在這樣的函數(shù)依賴xa, x有真子集z使得f-xaza與f等價。 例 關(guān)系模式s,其中: u= sno,sdept,mname,cno,grade , f= snosdept,sdeptmname,(sno,cno)grade 設(shè)f=snosdept,snomname,sdeptmname, (sno,cno)grade,(sno,sdept)sdeptf是最小覆蓋,而f不是。因為:f - snomname與f 等價 f - (sno,sdept)sde

26、pt也與f 等價 定理:每一個函數(shù)依賴集f均等價于一個極小函數(shù)依賴集fm。此fm稱為f的最小依賴集。證明: 構(gòu)造性證明,找出f的一個最小依賴集。(1)逐一檢查f中各函數(shù)依賴fdi:xy,若y=a1a2 ak,k 2, 則用 xaj |j=1,2, k 來取代xy。(2)逐一檢查f中各函數(shù)依賴fdi:xa,令g=f-xa, 若axg+, 則從f中去掉此函數(shù)依賴。(3)逐一取出f中各函數(shù)依賴fdi:xa,設(shè)x=b1b2bm, 逐一考查bi (i=l,2,m),若a (x-bi )f+ , 則以x-bi 取代x。12設(shè)有關(guān)系模式r(u,f),其中: ue,f,g,h,feg,ge,feg,heg,f

27、he 求f的最小依賴集。解:(1) 將f中依賴右部屬性單一化: f1eg,ge,fe,fg,he,hg,fhe(2) 對于fhe,由于有fe,則為多余的,則: f2eg,ge,fe,fg,he,hg(3) 由于eg,所以在f2中的fe和fg以及he和hg之一是多余的,則:精品. f3eg,ge,fg,hg 或f3eg,ge,fg,he 或f3eg,ge,fe,he或f3eg,ge,fe,hg13設(shè)有關(guān)系模式r(u,f),其中: ua,b,c,d,fab,bc,db,把r分解成bcnf模式集: (1) 如果首先把r分解成acd,bd,試求f在這兩個模式上的投影。 (2) acd和bd是bcnf嗎

28、?如果不是,請進一步分解。解: (1) acd(f)ac,dc bd(f)db (2) bd已是bcnf。acd不是bcnf。模式acd的候選關(guān)鍵字是ad??紤]ac,a不是模式acd的候選關(guān)鍵字,所以這個函數(shù)依賴不滿足bcnf條件。將acd分解為ac和ad,此時ac和ad均為bcnf。14設(shè)有關(guān)系模式r(a,b,c,d),其上的函數(shù)依賴集: fac,ca,bac,dac (1) 計算(ad)+。 (2) 求f的最小等價依賴集fm。 (3) 求r的關(guān)鍵字。 (4) 將r分解使其滿足bcnf且無損連接性。 (5) 將r分解成滿足3nf并具有無損連接性與保持依賴性。解: (1) 令xad,x(0)a

29、d,x(1)=acd,x(2)=acd,故(ad)+acd。(2) 將f中的函數(shù)依賴右部屬性單一化: ac ca f1= ba bc da dc在fl中去掉多余的函數(shù)依賴: ba,ac bc是多余的。 又da,ac dc是多余的。 ac ca f2= ba da函數(shù)依賴集的最小集不是惟一的,本題中還可以有其他答案。f2中所有依賴的左部卻是單屬性,不存在依賴左部有多余的屬性 ac ca f= ba da(3) bd在f中所有函數(shù)依賴的右部均未出現(xiàn)候選關(guān)鍵字中一定包含bd,而(bd)+abcd,因此,bd是r惟一的候選關(guān)鍵字。精品.(4) 考慮acac不是bcnf(ac不包含候選關(guān)鍵字bd),將a

30、bcd分解為ac和abd。ac已是bcnf,進一步分解abd,選擇ba,把abd分解為ab和bd。此時ab和ad均為bcnfac,ab,bd。(5) 由(2)可求出滿足3nf的具有依賴保持性的分解為=ac,bd,da。判斷其無損連接性如下表所示,由此可知不具有無損連接性。riabcdaca1a3baa1a2a3daa1a3a4令bd,bd是r的候選關(guān)鍵字pac,ba,da,bd。15己知關(guān)系模式r(city,st,zip)和函數(shù)依賴集: f(city,st)zip,zipcity 試找出r的兩個候選關(guān)鍵字。解:設(shè)u(city,st,zip),f中函數(shù)依賴的左邊是city,st,zip: 由于z

31、ipcity,去掉city,故(st,zip)可能是候選關(guān)鍵字。 (st,zip)+st,zip,city,(st,zip)u。 又st+=st,zip+=zip,city,故(st,zip)是一個候選關(guān)鍵字。 由于(city,st)zip,去掉zip,故(city,st)可能是候選關(guān)鍵字。 (city,st)+=city,st,zip,(city,st)u。 又city+city,st+=st,故(city,st)是一個候選關(guān)鍵字。因此,r的兩個候選關(guān)鍵字是(st,zip)和(city,st)。16設(shè)有關(guān)系模式r(a,b,c,d,e),r的函數(shù)依賴集: fad,ed,db,bcd,cda (

32、1) 求r的候選關(guān)鍵字。 (2) 將r分解為3nf。解:(1) 設(shè)u(a,b,c,d,e),由于(ce)+=abcde,c+=c,e+=bder的候選關(guān)鍵字是ce。 (2) 求出最小依賴集fad,ed,db,bcd,cda 將r分解的3nf:ad,de,bd,bcd,acd。17設(shè)有關(guān)系模式r(u,v,w,x,y,z),其函數(shù)依賴集: fuv,wz,yu,wyx,現(xiàn)有下列分解: (1) lwz,vy,wxy,uv (2) 2uvy,wxyz判斷上述分解是否具有無損連接性。解:精品.(1) 1的無損連接性判斷表如下所示,由此判斷1不具有無損連接性。riuvwxyzwza3a6vya2a5wxya

33、3a4a5a6uva1a2(2) 2的無損連接性判斷表如下所示,由此判斷2具有無損連接性。riuvwxyzuvya1a2a5wxyza1a2a3a4a5a618已知r(al,a2,a3,a4,a5)為關(guān)系模式,其上函數(shù)依賴集:fala3,a3a4,a2a3,a4a5a3,a3a5a1 =rl(al,a4),r2(a1,a2),r3(a2,a3),r4(a3,a4,a5),r5(al,a5) 判斷是否具有無損連接性。解:的無損連接性判斷表如下所示,由此判斷不具有無損連接性。ria1a2a3a45a1a4a1a3a4a1a2a1a2a3a4a2a3a2a3a4a3a4a5a1a3a4a5a1a5a

34、1a3a4a519設(shè)有關(guān)系模式r(b,o,i,s,q,d,其上函數(shù)依賴集: fsd,ib,isq,bo 如果用sd,ib,isq,bo代替r,這樣的分解是具有無損連接嗎?解:=rl(s,d),r2(i,b),r3(i,s,q),r4(b,o) 的無損連接性判斷表如下所示,由此判斷具有無損連接性。riboisqdsda4a6iba1a3a5isqa1a2a3a4a5a6boa1a220設(shè)有關(guān)系模式r(f,g,h,i,j),r的函數(shù)依賴集: ffi,ji,ig,ghi,ihf (1) 求出r的所有候選關(guān)鍵字。 (2) 判斷fg,fj,jh,igh,fh是否為無損連接分解? (3) 將r分解為3nf

35、,并具有無損連接性和依賴保持性。解: (1) 從f中看出,候選關(guān)鍵字中至少包含j和h(因為它們不依賴于誰),計算:令xjh,x(0)jh,x(1)=ijh,x(2)gijh,x(3)fgijh精品.候選關(guān)鍵字只有jh。(2) 的無損連接性判斷表如下所示,由此判斷不具有無損連接性。rifghijfga1a2fja1a3a4a5jha3a5igha2a3a4fha1a3 (3) 求出最小依賴集f=fi,ji,igl ghi,ihf 滿足3nf且具有依賴保持性的分解為: fi,ji,ig,ghi,ihe的無損連接性判斷結(jié)果如下所示,由此判斷不具有無損連接性。rifghijfia1a2a4jia2a4

36、a5iga2a4a5ghia1a2a3a4ihea1a2a3a4 令jh,jh是r的候選關(guān)鍵字。fi,ji,ig,ghi,ihf,jh具有無損連接性和依賴保持性21設(shè)有關(guān)系模式r(a,b,c,d,e),其上的函數(shù)依賴集: fac,cd,bc,dec,cea (1) 求r的所有候選關(guān)鍵字。 (2) 判斷ad,ab,bc,cde,ae是否為無損連接分解? (3) 將r分解為bcnf,并具有無損連接性。解:(1) 從f中看,候選關(guān)鍵字至少包含be(因為它們不依賴于誰),而(be)+=abcdebe是r的惟一候選關(guān)鍵字。(2) 的無損連接性判斷結(jié)果如下所示,由此判定不具有無損連接性。riabcdead

37、a1a3a4aba1a2a3a4bca2a3a4cdea1a3a4a5aea1a3a4a5(3) 考慮acac不是bcnf(ac不包含候選關(guān)鍵字be) 將abcde分解為ac和abde,ac已是bcnf。精品. 進一步分解abde,選擇bd,把abde分解為bd和abe,此時bd和abe均為bcnf。ac,bd,abe22設(shè)有一教學(xué)管理數(shù)據(jù)庫,其屬性為:學(xué)號(s#),課程號(c#),成績(g),任課教師(tn),教師所在的系(d)。這些數(shù)據(jù)有下列語義: 學(xué)號和課程號分別與其代表的學(xué)生和課程一一對應(yīng); 一個學(xué)生所修的每門課程都有一個成績; 每門課程只有一位任課教師,但每位教師可以有多門課程; 教

38、師中沒有重名,每個教師只屬于一個系。(1) 試根據(jù)上述語義確定函數(shù)依賴集。(2) 如果用上面所有屬性組成一個關(guān)系模式,那么該關(guān)系模式為何模式?并舉例說明在進行增、刪操作時的異常現(xiàn)象。(3) 將其分解為具有依賴保持和無損連接的3nf。 解:(1) f(s#,c#)g,c#tn,tnd(2) 關(guān)系模式為1nf。該關(guān)系模式的候選關(guān)鍵字為(s#,c#)則非主屬性有g(shù)、tn和g。 又f中有c#tnp存在非主屬性tn對候選關(guān)鍵字(s#,c#)的部分依賴即:(s#,c#)-tn。異常現(xiàn)象: 若新增設(shè)一門課程而暫時還沒有學(xué)生選修時,則因缺少關(guān)鍵字s#值而不能進行插入操作。 若某個教師調(diào)離學(xué)校要刪除其有關(guān)信息時

39、,會將不該刪除的課程(c#)信息刪除。(3) f=f(s#,c#)g,c#tn,tnd r1,r2,r3 其中:r1=(s#,c#,g) r2(c#,tn)r3(tn,d)23證明在關(guān)系數(shù)據(jù)庫中,任何的二元關(guān)系模式必定是bcnf。 證明:設(shè)r為一個二元關(guān)系r(x1,x2),則屬性x1和x2之間可能存在以下幾種依賴關(guān)系: (1) x1x2,但x2x1,則關(guān)系r的候選關(guān)鍵字為x1,函數(shù)依賴的左部包含候選關(guān)鍵字x1,r為bcnf。 (2) x1x2,x2x1,則關(guān)系r的候選關(guān)鍵字為x1和x2,這兩個函數(shù)依賴的左部都包含了r的任一候選關(guān)鍵,r為bcnf。 (3) xl! x2,x2!x1,則關(guān)系r的候

40、選關(guān)鍵字為(x1,x2),r上沒有函數(shù)依賴,r為bcnf。證畢。24如下給出的關(guān)系r為第幾范式?是否存在操作異常?若存在,則將其分解為高一級范式。分解完成的高級范式中是否可以避免分解前關(guān)系中存在的操作異常?精品.工程號材料號數(shù)量開工日期完工日期價格p1i142000.52001.5250p1i262000.52001.5300p1i3152000.52001.5180p2i162000.112001.12250p2i4182000.112001.12350解:它為1nf。因為該關(guān)系的候選關(guān)鍵字為(工程號,材料號),而非主屬性“開工日期”和“完工日期”部分函數(shù)依賴于候選關(guān)鍵字的子集“工程號”,即: p(工程號,材料號)開工日期 p (工程號,材料號)完工日期 它不是2nf。 它存在操作異常,如果工程項目確定后,若暫時未用到材料,則該工程的數(shù)據(jù)因缺少關(guān)鍵字的一部分(材料號)而不能進入到數(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)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論