《數(shù)據(jù)庫技術(shù)與應(yīng)用》第6章習(xí)題答案.docx
《《數(shù)據(jù)庫技術(shù)與應(yīng)用》第6章習(xí)題答案.docx》由會員分享,可在線閱讀,更多相關(guān)《《數(shù)據(jù)庫技術(shù)與應(yīng)用》第6章習(xí)題答案.docx(4頁珍藏版)》請在裝配圖網(wǎng)上搜索。
第6章關(guān)系數(shù)據(jù)理論 1. 理解下列術(shù)語的定義: 函數(shù)依賴、部分函數(shù)依賴、完全函數(shù)依賴、傳遞依賴、候選碼、碼、主碼、外碼、全碼、1NF、2NF、3NF、BCNF、4NF。 解: 函數(shù)依賴:設(shè)R(U)是屬性集U上的關(guān)系模式。X,Y是U的子集,若對于R(U)的任意一個可能的關(guān)系r,r中不可能存在兩個元組在X上的屬性相等,而在Y上的屬性值不等,則稱X函數(shù)確定Y或Y函數(shù)依賴于X,記作X→Y。 部分函數(shù)依賴:如果X→Y,但Y不完全函數(shù)依賴于X,則稱Y對X 部分函數(shù)依賴(Partial Functional Dependency),記作:XPY。 完全函數(shù)依賴:如果X→Y,但對于X中的任意一個真子集X,都有Y不依賴于X,即X?Y,則稱Y對X完全函數(shù)依賴(Full Functional Dependency),記作:XFY。 傳遞依賴:如果X→Y,Y→Z,且Y?X,Y?X,則稱Z對X傳遞函數(shù)依賴(Transitive Functional Dependency)。記作:XTZ。 候選碼:若關(guān)系中的某一屬性組的值能惟一地標識一個元組,則稱該屬性組為候選碼 (Candidate key)。 主碼:若一個關(guān)系有多個候選碼,則選定其中一個為主碼(Primarykey) 。 外部碼:設(shè)F是基本關(guān)系R的一個或一組屬性,但不是關(guān)系R的碼,如果F與基本關(guān)系S的主碼Ks相對應(yīng),則稱F是基本關(guān)系R的外部碼(Foreign key),簡稱外碼。 全碼:最復(fù)雜的情況,整個屬性組是碼,稱為全碼(All-key)。 1NF:若一個關(guān)系模式R中每一個屬性值都是一個不可再分的最小數(shù)據(jù)單元,則稱關(guān)系模式滿足第一范式,記作R∈1NF。 2NF:若R∈1NF,且每一個非主屬性完全函數(shù)依賴于R的碼,則R∈2NF。 3NF:關(guān)系模式R中若不存在這樣的候選碼X,屬性組Y及非主屬性Z(Z?Y)使得X→Y,Y→Z成立,則稱R∈3NF。 BCNF:關(guān)系模式R∈1NF。若對于R中的每一個函數(shù)依賴X→Y且Y?X,X必含有碼,則R∈BCNF。 4NF:關(guān)系模式R1NF,如果對于R的每個非平凡多值依賴XY(YX),X都含有碼,則稱R4NF。 2. 下面的結(jié)論哪些是正確的?哪些是錯誤的?對于錯誤的請給出一個反例說明。 (1) 任何一個二目關(guān)系是屬于3NF的。 (2) 任何一個二目關(guān)系是屬于BCNF的。 (3) 任何一個二目關(guān)系是屬于4NF的。 (4) 當(dāng)且僅當(dāng)函數(shù)依賴A→B在R上成立,關(guān)系R(A,B,C)等于投影R1(A,B)和R2(A,B)的連接。 (5) 若R.A→R.B,R.B→R.C則R.A→R.C。 (6) 若R.A→R.B,R.A→R.C則R.A→R.(B,C)。 (7) 若R.B→R.A,R.C→R.A則R.(B,C)→R.A。 (8) 若R.(B,C)→R.A,則R.B→R.A,R.C→R.A。 解: (1) 正確,因為關(guān)系模式中只有兩個屬性,所以無傳遞。 (2) 正確,按BCNF的定義,若XY,且Y不是X的子集時,每個決定因素都包含碼,對于二目關(guān)系決定因素必然包含碼。詳細證明如下: 證明:設(shè)R為一個二目關(guān)系R(A1,A2),則屬性A1和A2之間可能存在以下幾種依賴關(guān)系: A、A1→A2,但A2?A1,則關(guān)系R的碼為A1,決定因素都包含碼,所以,R是BCNF。 B、A1→A2,A2→A1,則關(guān)系R的碼為A2,所以決定因素都包含碼,R是BCNF。 (3) 正確,因為只有兩個屬性,所以無非平凡的多值依賴。 (4) 正確。 (5) 正確。 (6) 正確。 (7) 正確。 (8) 錯誤。 3. 汽車保險公司管理客戶和保險車輛信息。每位客戶擁有一輛或多輛汽車。每輛汽車可能發(fā)生0次或多次交通事故??蛻粜枰怯浀男畔{照號、姓名、住址、電話、等信息。車輛需要登記車輛編號、車型、出廠年份、駕照號等信息。事故需要登記事故編號、事故發(fā)生日期、發(fā)生地點、車輛編號、賠償金等信息。根據(jù)上述描述,列舉可能的函數(shù)依賴(不必列舉平凡函數(shù)依賴)。 解: 關(guān)系模式: 客戶(駕照號,姓名,住址,電話) 車輛(車輛編號,車型,出廠年份) 事故(事故編號,事故發(fā)生日期,發(fā)生地點,賠償金) 存在的函數(shù)依賴: 客戶(駕照號→姓名,駕照號→住址,駕照號→電話) 車輛(車輛編號→車型,車輛編號→出廠年份、車輛編號→駕照號) 事故(事故編號→事故發(fā)生日期,事故編號→發(fā)生地點,事故編號→賠償金、事故編號→車輛編號) 4. 設(shè)關(guān)系模式R(A,B,C,D,E,F(xiàn)),函數(shù)依賴集F={A→C,C→A,B→AC,D→AC,BD→A}。 (1) 求出R的候選碼。 (2) 求出F的最小函數(shù)依賴集。 解: (1) B、D。 (2) ① 將F中每個函數(shù)依賴的右部均變成單屬性。則, F={A→C,C→A,B→A,B→C,D→A,D→C,BD→A}; ② 去掉F中各函數(shù)依賴左部多余的屬性。 在BD→A中,由于存在B→A和D→A因此,BD→A為多余的函數(shù)依賴,可去掉。 ③ 去掉F中冗余的函數(shù)依賴。 由于B→A可由BC和C→A推出,因此,可去掉B→A。 D→A可由D→C和C→A推出,因此,可去掉D→A。 因此,F(xiàn)m={A→C,C→A,B→C,D→C }。 5. 設(shè)X→Y在關(guān)系模式R中成立。如果存在Z?X使得Z→Y成立,則稱函數(shù)依賴X→Y稱為部分函數(shù)依賴,并稱Y部分函數(shù)依賴于X;否則稱X→Y為完全函數(shù)依賴,并稱Y完全依賴于X。使用完全函數(shù)依賴概念給出2NF的等價定義。 解: 若R∈1NF,且R的所有函數(shù)依賴都滿足完全函數(shù)依賴,則R∈2NF。 6. 證明: (1) 如果R的所有屬性都是主屬性,則R是3NF。 (2) 如果R的碼包含R的所有屬性(全碼),則R是BCNF。 解: (1) 證明:關(guān)系模式R中若不存在這樣的候選碼X,屬性組Y及非主屬性Z(Z?Y)使得X→Y,Y→Z成立,則稱R∈3NF。因為如果R的所有屬性都是主屬性,即沒有非主屬性,則不存在非主屬性對碼的部分和傳遞函數(shù)依賴。因此如果R的所有屬性都是主屬性,則R是3NF。 (2) 證明: BCNF要求關(guān)系范式滿足1NF,且每一個函數(shù)依賴的決定因子都包含碼。而全碼的關(guān)系滿足1NF,且只有一個決定因子,即關(guān)系模式包含的所有屬性。因此如果R的碼包含R的所有屬性(全碼),則R是BCNF。 7. 在關(guān)系模式設(shè)計中,有沒有理由設(shè)計一個屬于2NF,但不屬于更高范式的關(guān)系模式?解釋你的答案。 解: 沒有理由。因為2NF是表示所有屬性都必須依賴于碼,保證在表內(nèi)所有的屬性都是非冗余或者說都是相關(guān)的,必不可少的。3NF是在2NF的基礎(chǔ)上的增強,既然2NF是屬性依賴于碼,那么就可能存在一種依賴情況:A依賴B,B依賴C ,這樣既可推出A依賴C這樣就表示A既依賴于B也依賴于C,那么你可以選擇B也可以選擇C做主碼,那么違反了主碼要唯一的基本原則,這樣是不合適的。所以說3NF是在2NF的增強,確定了主碼必須唯一,消除了2NF的傳遞依賴性。因此,3NF是一個可用關(guān)系模式應(yīng)滿足的最低范式,也就是說,如果一個關(guān)系不服從3NF,這個關(guān)系其實是不可用的。 8. 設(shè)關(guān)系R和函數(shù)依賴F:R(W,X,Y,Z)F={X→Z,WX→Y},試求: (1) 關(guān)系R屬于第幾范式? (2) 如果關(guān)系R不屬于BCNF,請將關(guān)系R逐步分解為BCNF。 解: (1) R是1NF。侯選碼為WX,則Y,Z為非主屬性,又由于X→Z,因此F中存在非主屬性對侯選碼的部分函數(shù)依賴。 (2) 將關(guān)系分解為: R1(W,X,Y),F(xiàn)1 = { WX→Y } R2(X,Z),F(xiàn)2 = { X→Z } 消除了非主屬性對碼的部分函數(shù)依賴。F1和F2中的函數(shù)依賴都是非平凡的,并且決定因素是候選碼,所以上述關(guān)系模式是BCNF。 9. 設(shè)有關(guān)系模式R(EGHIJ),R的函數(shù)依賴集F={E→I,J→I,I→G,GH→I,IH→E},求: (1) R的候選關(guān)鍵字 (2) 判斷s={EG,EJ,JH,IGH,EH}是否為無損連接分解? (3) 將R分解為3NF,并具有無損連接性和保持函數(shù)依賴性。 解: (1) 由函數(shù)依賴集F可知,該關(guān)系模式的候選碼為JH。 (2) s={EG,EJ,JH,IGH,EH}是無損連接分解。 (3) 去掉在函數(shù)依賴集右側(cè)出現(xiàn)的,剩下JH,(JH)+=EGHIJ,所以候選碼只有JH。 第一、求出最小依賴集Fm=F; 第二、沒有不在F中出現(xiàn)的屬性 第三、沒有那個依賴X→A∈F,且XA=U; 第四、沒有相同的左部,所以每個依賴自成一組ρ={EI,JI,IG,GHI,IHE} 第五、τ=ρ?{JH},τ={EI,JI,IG,GHI,IHE,JH }- 1.請仔細閱讀文檔,確保文檔完整性,對于不預(yù)覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點此認領(lǐng)!既往收益都歸您。
下載文檔到電腦,查找使用更方便
9.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計者僅對作品中獨創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 數(shù)據(jù)庫技術(shù)與應(yīng)用 數(shù)據(jù)庫技術(shù) 應(yīng)用 習(xí)題 答案
鏈接地址:http://www.820124.com/p-8931715.html