版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、數(shù)據(jù)庫原理之關(guān)系數(shù)據(jù)庫的模式設(shè)計課后習(xí)題及答案名詞解釋 (1) 函數(shù)依賴:FD(function dependency),設(shè)有關(guān)系模式R(U),X,Y是U的子集, r是R的任一具體關(guān)系,如果對r的任意兩個元組t1,t2,由t1X=t2X導(dǎo)致t1Y=t2Y, 則稱X函數(shù)決定Y,或Y函數(shù)依賴于X,記為XY。XY為模式R的一個函數(shù)依賴。 (2) 函數(shù)依賴的邏輯蘊涵:設(shè)F是關(guān)系模式R的一個函數(shù)依賴集,X,Y是R的屬性子集, 如果從F中的函數(shù)依賴能夠推出XY,則稱F邏輯蘊涵XY,記為F|=XY。 (3) 部分函數(shù)依賴:即局部依賴,對于一個函數(shù)依賴WA,如果存在XW(X包含于W)有XA成立, 那么稱WA是
2、局部依賴,否則稱WA為完全依賴。 (4) 完全函數(shù)依賴:見上。 (5) 傳遞依賴:在關(guān)系模式中,如果YX,XA,且XY(X不決定Y), AX(A不屬于X),那么稱YA是傳遞依賴。 (6) 函數(shù)依賴集F的閉包F+: 被邏輯蘊涵的函數(shù)依賴的全體構(gòu)成的集合,稱為F的閉包(closure),記為F+。 (7) 1NF:第一范式。如果關(guān)系模式R的所有屬性的值域中每一個值都是不可再分解的值, 則稱R是屬于第一范式模式。如果某個數(shù)據(jù)庫模式都是第一范式的,則稱該數(shù)據(jù)庫存模式屬于第一范式的數(shù)據(jù)庫模式。 第一范式的模式要求屬性值不可再分裂成更小部分,即屬性項不能是屬性組合和組屬性組成。 (8) 2NF:第二范式。
3、如果關(guān)系模式R為第一范式,并且R中每一個非主屬性完全函數(shù)依賴于R的某個候選鍵, 則稱是第二范式模式;如果某個數(shù)據(jù)庫模式中每個關(guān)系模式都是第二范式的,則稱該數(shù)據(jù)庫模式屬于第二范式的數(shù)據(jù)庫模式。 (注:如果A是關(guān)系模式R的候選鍵的一個屬性,則稱A是R的主屬性,否則稱A是R的非主屬性。) (9) 3NF:第三范式。如果關(guān)系模式R是第二范式,且每個非主屬性都不傳遞依賴于R的候選鍵, 則稱R是第三范式的模式。如果某個數(shù)據(jù)庫模式中的每個關(guān)系模式都是第三范式,則稱為3NF的數(shù)據(jù)庫模式。 (10) BCNF:BC范式。如果關(guān)系模式R是第一范式,且每個屬性都不傳遞依賴于R的候選鍵,那么稱R是BCNF的模式。 (
4、11) 4NF:第四范式。設(shè)R是一個關(guān)系模式,D是R上的多值依賴集合。如果D中成立非平凡多值依賴XY時, X必是R的超鍵,那么稱R是第四范式的模式。 (12) 推理規(guī)則的正確性和完備性:正確性是指,如果XY是從推理規(guī)則推出的,那么XY在F+中。 完備性是指,不能從F使用推理規(guī)則導(dǎo)出的函數(shù)依賴不在F+中。 (13) 依賴集的覆蓋和等價:關(guān)系模式R(U)上的兩個函數(shù)依賴集F和G,如果滿足F+=G+,則稱F和G是等價的。 如果F和G等價,則可稱F覆蓋G或G覆蓋F。 (14) 最小依賴集:如果函數(shù)集合F滿足以下三個條件:(1)F中每個函數(shù)依賴的右部都是單屬性; (2)F中的任一函數(shù)依賴XA,其F-XA
5、與F是不等價的;(3)F中的任一函數(shù)依賴XA,Z為X的子集,(F-XA)ZA與F不等價。則稱F為最小函數(shù)依賴集合,記為Fmin。 (15) 無損聯(lián)接:設(shè)R是一關(guān)系模式,分解成關(guān)系模式=R1,R2.,Rk,F是R上的一個函數(shù)依賴集。 如果對R中滿足F的每一個關(guān)系r都有r=R1(r)R2(r).Rk(r)則稱這個分解相對于F是"無損聯(lián)接分解"。 (16) 保持依賴集:所謂保持依賴就是指關(guān)系模式的函數(shù)依賴集在分解后仍在數(shù)據(jù)庫中保持不變, 即關(guān)系模式R到=R1,R2,.,Rk的分解,使函數(shù)依賴集F被F這些Ri上的投影蘊涵。 (17) 多值依賴:設(shè)R(U)是屬性集U上的一個關(guān)系模式,
6、X,Y,Z是U的子集,并且Z=U-X-Y, 用x,y,z分別代表屬性集X,Y,Z的值,只要r是R的關(guān)系,r中存在元組(x,y1,z1)和(x,y2,z2)時, 就也存在元組(x,y1,z2)和(x,y2,z1),那么稱多值依賴(MultiValued Dependency MVD) XY在關(guān)系模式R中成立。 關(guān)系模式R有n個屬性,在模式R上可能成立的函數(shù)依賴有多少個 其中平凡的函數(shù)依賴有多少個非平凡的函數(shù)依賴有多少個 (要考慮所有可能的情況,數(shù)學(xué)排列組合問題。對于數(shù)據(jù)庫本身而言,本題沒多大意義) 所有屬性相互依賴時,函數(shù)依賴最多。· 平凡的函數(shù)依
7、賴:對于函數(shù)依賴XY,如果YX,那么稱XY是一個“平凡的函數(shù)依賴”。 建立關(guān)于系、學(xué)生、班級、社團等信息的一個關(guān)系數(shù)據(jù)庫, 一個系有若干個專業(yè),每個專業(yè)每年只招一個班,每個班有若干個學(xué)生,一個系的學(xué)生住在同一宿舍區(qū), 每個學(xué)生可以參加若干個社團,每個社團有若干學(xué)生。 描述學(xué)生的屬性有:學(xué)號、姓名、出生年月、系名、班級號、宿舍區(qū)。 描述班級的屬性有:班級號、專業(yè)名、系名、人數(shù)、入校年份。 描述系的屬性有:系名、系號、系辦公地點、人數(shù)。 描述社團的
8、屬性有:社團名、成立年份、地點、人數(shù)、學(xué)生參加某社團的年份。 請給出關(guān)系模式,寫出每個關(guān)系模式的最小函數(shù)依賴集,指出是否存在傳遞函數(shù)依賴, 對于函數(shù)依賴左部是多屬性的情況,討論函數(shù)依賴是完全函數(shù)依賴還是部分函數(shù)依賴。 指出各關(guān)系的候選鍵、外部鍵,有沒有全鍵存在 各關(guān)系模式如下: 學(xué)生(學(xué)號,姓名,出生年月,系名,班級號,宿舍區(qū)) 班級(班級號,專業(yè)名,系名,人數(shù),入校年份) 系(系名,系號,系辦公地點,人數(shù)) 社團(社團名,成立年份,地點,人數(shù)) 加入社團(社團名,學(xué)號,學(xué)生參加社團的年份) 學(xué)生(學(xué)號,姓名,出生年月,系名,班級號,
9、宿舍區(qū)) “學(xué)生”關(guān)系的最小函數(shù)依賴集為: Fmin=學(xué)號姓名,學(xué)號班級號,學(xué)號出生年月,學(xué)號系名,系名宿舍區(qū) 以上關(guān)系模式中存在傳遞函數(shù)依賴,如:學(xué)號系名,系名宿舍區(qū) 候選鍵是學(xué)號,外部鍵是班級號,系名。 notice: 在關(guān)系模式中,如果YX,XA,且XY(X不決定Y), A不屬于X,那么稱YA是傳遞依賴。 班級(班級號,專業(yè)名,系名,人數(shù),入校年份) “班級”關(guān)系的最小函數(shù)依賴集為: Fmin=(系名,專業(yè)名)班級號,班級號人數(shù),班級號入校年份,班級號系名,班級號專業(yè)名 (假設(shè)沒有相同的系,不同系中專業(yè)名可以相同) 以上關(guān)系模式中不存在傳遞函數(shù)依賴。 “(系名,專業(yè)名)班級號”是完全函數(shù)
10、依賴。 候選鍵是(系名,專業(yè)名),班級號,外部鍵是系名。 系(系名,系號,系辦公地點,人數(shù)) “系”關(guān)系的最小函數(shù)依賴集為: Fmin=系號系名,系名系辦公地點,系名人數(shù),系名系號 以上關(guān)系模式中不存在傳遞函數(shù)依賴 候選鍵是系名,系號 社團(社團名,成立年份,地點,人數(shù)) “社團”關(guān)系的最小函數(shù)依賴集為: Fmin=社團名成立年份,社團名地點,社團名人數(shù)) 以上關(guān)系模式中不存在傳遞函數(shù)依賴。 候選鍵是社團名 加入社團(社團名,學(xué)號,學(xué)生參加社團的年份)“加入社團”關(guān)系的最小函數(shù)依賴集為: Fmin=(社團名,學(xué)號)學(xué)生參加社團的年份) “(社團名,學(xué)號)學(xué)生參加社團的年份”是完全函數(shù)依賴。以上
11、關(guān)系模式中不存在傳遞函數(shù)依賴。 候選鍵是(社團名,學(xué)號)。 對函數(shù)依賴XY的定義加以擴充,X和Y可以為空屬性集,用表示, 那么X,Y,的含義是什么 根據(jù)函數(shù)依賴的定義,以上三個表達(dá)式的含義為: (1)一個關(guān)系模式R(U)中,X,Y是U的子集,r是R的任一具體關(guān)系,如果對r的任意兩個元組t1,t2, 由t1X=t2X必有t1=t2。即X表示空屬性函數(shù)依賴于X。這是任何關(guān)系中都存在的。 (2)Y表示Y函數(shù)依賴于空屬性。由此可知該關(guān)系中所有元組中Y屬性的值均相同。 (3)表示空屬性函數(shù)依賴于空屬性。這也是任何關(guān)系中都存在的。 已知關(guān)系模式R(ABC),F(xiàn)=AC,BC,求F+。
12、;可以直接通過自反律、增廣律、傳遞律加以推廣: F+=,A,B,C,AC,BC,AB,ABA,ABB,ABC,ABBC,ABAB,ABABC,BC,BCC,BCB,BCBC,AC,ACC,ACA,ACAC,ABC,ABCA,ABCB,ABCC,ABCBC,ABCAB,ABCABC 試分析下列分解是否具有無損聯(lián)接和保持函數(shù)依賴的特點: (1)設(shè)R(ABC),F(xiàn)1=AB 在R上成立,1=AB,AC。 首先,檢查是否具有無損聯(lián)接特點: 第1種解法-算法:ABCABa1a2b13ACa1b22a3ABCa1a2b13a1a2a3(1) 構(gòu)造表(2)根據(jù)AB進行處理結(jié)果第二行全是a行,因此分解是無損聯(lián)接
13、分解。 第2種解法:(定理 設(shè) R1=AB,R2=AC R1R2=A R2- R1=B AB,該分解是無損聯(lián)接分解。 然后,檢查分解是否保持函數(shù)依賴 R1(F1)=AB,以及按自反率推出的一些函數(shù)依賴 R2(F1)=按自反率推出的一些函數(shù)依賴 F1被R1(F1)所蘊涵,所以該分解保持函數(shù)依賴。 (2)設(shè)R(ABC),F(xiàn)2=AC,BC在R上成立,2=AB,AC 首先,檢查是否具有無損聯(lián)接特點: 第1種解法(略) 第2種解法:(定理 設(shè) R1=AB,R2=AC R1R2=A R2- R1=C AC,該分解是無損聯(lián)接分解。 然后,檢查分解是否保持函數(shù)依賴 R1(F2)=按自反率推出的一些函數(shù)依賴 R
14、2(F2)=AC,以及按自反率推出的一些函數(shù)依賴 F1中的BC沒有被蘊涵,所以該分解沒有保持函數(shù)依賴。 (3)設(shè)R(ABC),F(xiàn)3=AB,在R上成立,3=AB,BC. 首先,檢查是否具有無損聯(lián)接特點: 第1種解法: ABCABa1a2b13BCb21a2a3ABCa1a2a3a1b22a3(1) 構(gòu)造表(2)根據(jù)AB進行處理沒有一行全是a行。因此這個分解不具有無損聯(lián)接特性。 第2種解法:(定理 設(shè) R1=AB,R2=BC R1R2=B R2- R1=C,R1- R2=A BC,BA不在F3中 該分解不具有無損聯(lián)接特性。 然后,檢查分解是否保持函數(shù)依賴 R1(F3)=A
15、B,以及按自反率推出的一些函數(shù)依賴 R2(F3)=按自反率推出的一些函數(shù)依賴 F1被R1(F3)所蘊涵,所以該分解保持函數(shù)依賴。 (4)設(shè)R(ABC),F(xiàn)4=AB,BC在R上成立,4=AC,BC 首先,檢查是否具有無損聯(lián)接特點: 第1種解法(略) 第2種解法:(定理 設(shè) R1=AC,R2=BC R1(AC)R2(BC)=C R2- R1=B,R1- R2=A CB,CA不在F4中 該分解不具有無損聯(lián)接特性。 然后,檢查分解是否保持函數(shù)依賴 R1(F2)=按自反率推出的一些函數(shù)依賴 R2(F2)=BC,以及按自反率推出的一些函數(shù)依賴 F1中的AB沒有被蘊涵,所以該分解沒
16、有保持函數(shù)依賴。 設(shè)R=ABCD,R上的函數(shù)依賴集F=AB,BC,AD,DC,R的一個分解=AB,AC,AD,求:(1)F在的每個模式上的投影。(2)相對于F是無損聯(lián)接分解嗎(3)保持依賴嗎 (1) AB(F)=AB,及按自反律所推導(dǎo)出的一些平凡函數(shù)依賴 AC(F)=AC,及按自反律所推導(dǎo)出的一些平凡函數(shù)依賴 AD(F)=AD,及按自反律所推導(dǎo)出的一些平凡函數(shù)依賴 (2) ABCDABa1a2b13b14ACa1b22a3b24ADa1b32b33a4ABCDa1a2a3a4a1a2a3a4a1a2a3a4(1) 構(gòu)造表(2)根據(jù)AB,BC,AD,DC進行處理每一行都是a,相對于F是無損聯(lián)接分
17、解。 (3)AB(F)AC(F)AD(F)=AB,AC,AD, 沒有滿足BC,DC函數(shù)依賴, 因此相對于F的這個分解不保持函數(shù)依賴。 設(shè)R=ABCD,R上的F=AC,DC,BDA, 試證明=AB,ACD,BCD相對于F不是無損聯(lián)接分解。 根據(jù)算法 ABCDABa1a2b13b14ACDa1b22a3a4BCDb31a2a3a4ABCDa1a2a3b14a1b22a3a4b31a2a3a4(1) 構(gòu)造表(2)根據(jù)AC,DC,BDA進行處理沒有一行都是a,所以,相對于F不是無損聯(lián)接分解。 設(shè)R=ABCD,R上的F=AB,BC,DB,把R分解成BCNF模式集。 (1)若首先把R分解成ACD,BD,試
18、求F在這兩個模式上的投影。 (2)ACD和BD是BCNF嗎如果不是,請進一步分解。 (1)ACD(F)=AC BD(F)=DB (2)因為根據(jù)BCNF的定義,要求關(guān)系模式是第一范式,且每個屬性都不傳遞依賴于R的侯選鍵。 BCD中(A,D)為候選鍵,可是(A,D)A, AC,所以它不是BCNF模式。 它可進一步分解為:AC,DC,此時AC,DC均為BCNF模式。 BD是BCNF,因為R2(BD)是第一范式,且每個屬性都不傳遞依賴于D(候選鍵),所以它是BCNF模式。 設(shè)R=ABCD,=AB,BC,CD。F1=AB,BC;F2=BC,CD; (1)如果F1是R上的函數(shù)依賴集,此時是無損聯(lián)接分解嗎若
19、不是,試舉出反例。 (2)如果F2是R上的函數(shù)依賴集呢 (1)不是無損聯(lián)接??捎伤惴ㄅ袛嗷蛴啥ɡ砼袛唷?根據(jù)算法 ABCDABa1a2b13b14BCb21a2a3b24CDb31b32a3a4ABCDa1a2a3b14b21a2a3b24b31b32a3a4(1) 構(gòu)造表(2)根據(jù)AB,BC進行處理結(jié)果沒有出現(xiàn)一行全a的情況,所以它不是無損聯(lián)接。舉例如下: 設(shè)模式R的一關(guān)系r為(a1b1c1d1),(a2b2c1d2) 則有:r1=AB(r)=(a1b1),(a2b2) r2=BC(r)=(b1c1),(b2c1) r3=CD(r)=(c1d1),(c1d2) 令a=r1r2r3= (a1b
20、1c1d1),(a1b1c1d2),(a2b2c1d1),(a2b2c1d2) ra,所以不是無損聯(lián)接。 (2)如果F2是R上的函數(shù)依賴,則可以判斷,是無損聯(lián)接。判斷過程同上。 設(shè)關(guān)系模式R(S#,C#,GRADE,TNAME,TADDR),其屬性分別表示學(xué)生學(xué)號、 選修課程的編號,成績、任課教師地址等意義。如果規(guī)定,每個學(xué)生每學(xué)一門課只有一個成績; 每門課只有一個教師任教;每個教師只有一個地址(此處不允許教師同名同姓)。 (1)試寫出關(guān)系模式R基本的函數(shù)依賴和候選鍵。 (2)試把R分解成2NF模式集并說明理由。 (3)試把R分解成3NF模式集,并說明理由。 (1)F=(S#,C#)GRADE
21、,C#TNAME,TNAMETADDR 侯選鍵是(S#,C#)。 (2)在模式R中,TNAME不完全依賴于鍵(S#,C#),因此需進行分解,可分解為下列兩個關(guān)系。 SC=S#,C#,GRADE C=C#,TNAME,TADDR 分解后,SC中,GRADE完全依賴于侯選鍵(S#,C#),在C中,主屬性是C#,TNAME、TADDR均完全依賴于C#。 因此,該分解符合2NF模式。 (3)3NF:若每個關(guān)系模式是2NF,則每個非主屬性都不傳遞于R的候選鍵。 按上述已分好的兩個模式,SC中已滿足“每個非主屬性都不傳遞于R的候選鍵”,已是3NF,而在C中, C#TNAME,TNAMETADDR,TADD
22、R傳遞依賴于C#,因此還需分成兩個模式:CT(C#,TNAME), T(TNAME,TADD)。 分解后,總共有SC=S#,C#,GRADE,CT(C#,TNAME), T(TNAME,TADD)三個模式。 該分解符合3NF模式。 圖表示一個公司各部門的層次結(jié)構(gòu),對每個部門,數(shù)據(jù)庫中包含部門號 (唯一的)D#,預(yù)算費(BUDGET)以及此部門領(lǐng)導(dǎo)人員的職工號(唯一的)E#等信息。 對每一個部門,還存有部門的全部職工,生產(chǎn)科研項目以及辦公室的信息。 職工信息包括:職工號,他所參加的生產(chǎn)科研項目號(J#),他所在辦公室的電話號(PHONE#)。 生產(chǎn)科研項目包含:項目號(唯一的),預(yù)算費。 辦公室
23、信息包含:辦公室號(唯一的),面積。 對每個職工,數(shù)據(jù)庫中有他曾擔(dān)任過的職務(wù)以及擔(dān)任某一職務(wù)時的工資歷史。對每個辦公室包含此辦公室中全部電話號嗎的信息。 請給出你認(rèn)為合理的數(shù)據(jù)依賴,把這個層次結(jié)構(gòu)轉(zhuǎn)換成一組規(guī)范化的關(guān)系。 提示:此題可分步完成,先轉(zhuǎn)換成一組1NF的關(guān)系,然后逐步轉(zhuǎn)換成2NF,3NF,.。 先得到一個泛關(guān)系的模式如下: D=D#,Manager_E#,Budget,E#,J#,Phone#,Business,Sa_History,Office#,Area D#:部門號, Manager_E#:部門領(lǐng)導(dǎo)人員的職工號, E#:職工號, J#:生產(chǎn)科研項目號, Phone#:辦公室的電話號,Business:職工職務(wù),Sa_History:工資歷史,Office#:辦公室號,Area:辦公室面積 根據(jù)所給信息,給出下列數(shù)據(jù)依賴: F=D#Manager_E#,E#Office#,(E#,Business)Sa_History,J#Budget,E
溫馨提示
- 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)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024-2030年全球及中國CCTV機器人行業(yè)現(xiàn)狀動態(tài)及應(yīng)用前景預(yù)測報告
- 2024-2030年中國高分子防水材料產(chǎn)業(yè)未來發(fā)展趨勢及投資策略分析報告
- 2024-2030年中國香檳行業(yè)競爭趨勢及投資策略分析報告
- 2024-2030年中國閃存卡行業(yè)競爭策略及發(fā)展模式分析報告
- 2024-2030年中國銀黃顆粒劑產(chǎn)業(yè)未來發(fā)展趨勢及投資策略分析報告
- 2024-2030年中國鋼鐵貿(mào)易行業(yè)發(fā)展趨勢及十三五規(guī)模分析報告
- 2024年金融科技項目資金籌措計劃書代可行性研究報告
- 2024年升級版:屋頂與墻面鋼結(jié)構(gòu)制作協(xié)議
- 2024年新型農(nóng)場住宅購買協(xié)議
- 2024年技術(shù)支持代辦協(xié)議
- 公司組織架構(gòu)圖模板課件
- 遼寧省葫蘆島市各縣區(qū)鄉(xiāng)鎮(zhèn)行政村村莊村名居民村民委員會明細(xì)
- 植物種子的傳播方式課件
- 電纜敷設(shè)施工方案及安全措施
- 百合干(食品安全企業(yè)標(biāo)準(zhǔn))
- 肺血栓栓塞癥臨床路徑(縣級醫(yī)院版)
- 國開成本會計第10章綜合練習(xí)試題及答案
- 《西游記》-三打白骨精(劇本臺詞)精選
- T∕CSCS 012-2021 多高層建筑全螺栓連接裝配式鋼結(jié)構(gòu)技術(shù)標(biāo)準(zhǔn)-(高清版)
- 充電站項目合作方案-高新
- 急診科臨床診療指南-技術(shù)操作規(guī)范更新版
評論
0/150
提交評論