




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
數(shù)據(jù)庫原理及應(yīng)用Principle
and
Applicationof
Database數(shù)據(jù)庫原理及應(yīng)用1朱輝生(jssyzhs@)第
六章
關(guān)系數(shù)據(jù)理論(習題課)基本知識點數(shù)據(jù)庫原理及應(yīng)用1朱輝生(jssyzhs@)n
需要了解的:什么是一個“不好”的數(shù)據(jù)庫模式;什么是模式的插入異常、刪除異常;規(guī)范化理論的重要意義。n
需要牢固掌握的:關(guān)系的形式化定義;數(shù)據(jù)依賴的基本概念(函數(shù)依賴、平凡函數(shù)依賴、非平凡函數(shù)依賴、部分函數(shù)依賴、完全函數(shù)依賴、傳遞函數(shù)依賴、碼、候選碼、外碼、多值依賴);范式的概念;從1NF到4NF的定義;規(guī)范化的含義和作用。n需要舉一反三的:四個范式的理解與應(yīng)用,各個級別范式中存在的問題(插入異常、刪除異常、數(shù)據(jù)冗余)和解決方法;能夠根據(jù)應(yīng)用語義,完整地寫出關(guān)系模式的數(shù)據(jù)依賴集合,并能根據(jù)數(shù)據(jù)依賴分析某一個關(guān)系模式屬于第幾范式。n
難點:各個級別范式的關(guān)系及其證明。朱輝生(jssyzhs@)11.理解并給出下列術(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ù)依賴是最基本的、也是最重要的一種數(shù)據(jù)依賴。⑵函數(shù)依賴是屬性之間的一種聯(lián)系,體現(xiàn)在屬性值是否相等。由定義可知,若X→Y,則r中任意兩個元組,如果它們在X上的屬性值相等,那么在Y上的屬性值也一定相等。⑶要從屬性間實際存在的語義來確定它們之間的函數(shù)依賴。⑷函數(shù)依賴不是指關(guān)系模式R在某個時刻的關(guān)系(值)滿足的約束條件,而是指R在任何時刻的一切關(guān)系均要滿足的約束條數(shù)據(jù)庫原理件及應(yīng)。用習題解答和解析朱輝生(jssyzhs@)1數(shù)據(jù)庫原理及應(yīng)用完全函數(shù)依賴、部分函數(shù)依賴:在關(guān)系模式R(U)中,若X→Y,且對于X的任何一個真子集X’,都有X’?Y,則稱Y完全函數(shù)依賴于X,記作X
→
f
Y。若X→Y,但Y不完全函數(shù)依賴于X,則稱Y部分函數(shù)依賴于X,記作X
→
P
Y。傳遞函數(shù)依賴:在關(guān)系模式R(U)中,若X→Y,Y→Z,且Y?X,,則稱Z傳遞函數(shù)依賴于X
,記作X
t
Z
。候選碼、主碼:設(shè)K為關(guān)系模式R<U,F>中的屬性或?qū)傩越M合,若K
f
U,則K稱為R的一個侯選碼。若候選碼多于一個,則選定其中的一個為主碼。外碼:關(guān)系模式R中屬性或?qū)傩越MX并非R的碼,但X是另一個關(guān)系模式的碼,則稱X是R的外碼。全碼:整個屬性組是碼,稱為全碼。1NF:若關(guān)系模式R的所有屬性都是不可分的基本數(shù)據(jù)項,則R 1NF。1NF是對關(guān)系模式的最起碼要求,不滿足1NF的數(shù)據(jù)庫模式不能稱為關(guān)系數(shù)據(jù)庫。1NF
2NF
3NF
BCNF4NF。2NF:若關(guān)系模式R依賴于R的碼,則R1NF,并且每一個非主屬性都完全函數(shù)2NF。3NF:關(guān)系模式R中若不存在這樣的碼X、屬性組Y及非主屬性Z(Z
?
Y),
使得X→Y,Y?X,Y→Z成立,則稱R 3NF。BCNF:設(shè)關(guān)系模式R 1NF,如果對于R的每個函數(shù)依賴X→Y,若Y不屬于X,則X必含有候選碼,那么R BCNF。多值依賴:設(shè)關(guān)系模式R(U)中,
X、Y和Z U,且Z=U-X-Y,多值依賴X→→Y成立當且僅當對R的任一關(guān)系r,r在(X,Z)上的每個值對應(yīng)一組Y值,這組值僅決定于X值而與Z值無關(guān)。4NF:關(guān)系模式R<U,F> 1NF,如果對于R的每個非平凡多數(shù)據(jù)庫原理及值應(yīng)用依賴X→→Y(Y X),X都含1
有候選碼,則R朱4輝N生F(j。ssyzhs@)2.建立一個關(guān)于系、學生、班級、學會等諸信息的關(guān)系數(shù)據(jù)庫。描述學生的屬性有:學號、姓名、生日、系名、班號、宿舍區(qū)。描述班級的屬性有:班號、專業(yè)名、系名、人數(shù)、入校年份。描述系的屬性有:系號、系名、系辦公室地點、人數(shù)。描述學會的屬性有:學會名、成立年份、地點、人數(shù)。有關(guān)語義如下:一個系有若干專業(yè),每個專業(yè)每年只招一個班,每個班有若干學生。一個系的學生住在同一宿舍區(qū)。每個學生可參加若干學會,每學會有若干學生。學生參加某學會有一個入會年份。請給出關(guān)系模式,寫出每個關(guān)系模式的極小函數(shù)依賴集,指出是否存在傳遞函數(shù)依賴,對于函數(shù)依賴左部是多屬性的情況討論函數(shù)依賴是完全函數(shù)依賴,還是部分函數(shù)依賴。指出各關(guān)系的候選碼、外部碼,有沒有全碼存在?數(shù)據(jù)庫原理及應(yīng)用1朱輝生(jssyzhs@)n
解答:n
1)學生(學號,姓名,出生年月,系名,班號,宿舍區(qū)數(shù)據(jù)庫原理及應(yīng)用1朱輝生(jssyzhs@))n
F={學號—>姓名,學號—>出生年月,學號—>班號,班號—>系名,系名—>宿舍區(qū)}n
候選碼{學號};外碼{系名,班號};沒有全碼n存在傳遞依賴:學號—>系名;學號—>宿舍區(qū);傳遞傳遞傳遞n
班號—>宿舍區(qū)n
2)數(shù)據(jù)庫原理及應(yīng)用1朱輝生(jssyzhs@)n
班級(班號,專業(yè)名,系名,人數(shù),入校年份)n
F={班號—>專業(yè)名,班號—>系名,班號—>人數(shù),班號—>入校年份,(專業(yè)名,入校年份)—>班號,(專業(yè)名,入校年份)—>人數(shù),專業(yè)名—>系名}n
候選碼{班號,(專業(yè)名,入校年份)};外碼{系名};沒有全碼n
存在傳遞依賴:班號—傳遞>系名存在部分依賴:(專業(yè)名,入校年份)—>系名Pn
3)、n
系(系名,系號,系辦公室地點,人數(shù))n
F={系名—>系號,系名—>系辦公室地點,系名—>人數(shù),系號—>系辦公室地點,系號—>人數(shù)}n
候選碼{系名,系號};沒有外碼和全碼n
不存在傳遞依賴數(shù)據(jù)庫原理及應(yīng)用1朱輝生(jssyzhs@)n
4)學會(學會名,成立年份,地點,人數(shù),學號,入會年份)n
F={學會名—>成立年份,學會名—>地點,學會名—>人數(shù),(學會名,學號)—>入會年份}n
候選碼{(學會名,學號)};外碼{學號};沒有全碼存在部分依賴:數(shù)據(jù)庫原理及應(yīng)用1朱輝生(jssyzhs@)(學會名,學號)—>成立年份,P(學會名,學號)—>地點,P(學會名,學號)—>人數(shù)P3.試由Armostrong公理系統(tǒng)推導出下面三條推理規(guī)則:⑴合并規(guī)則:若X→Z,X→Y,則有X→YZ⑵偽傳遞規(guī)則:由X→Y,WY→Z,則有XW→Z⑶分解規(guī)則:若X→Y,Z Y,則有X→Z證明:⑴已知X→Z,由增廣律知XY→YZ,又因X→Y,可得XX→XY→YZ,根據(jù)傳遞律有X→YZ⑵已知X→Y,由增廣律知XW→WY,又因WY→Z,可得XW→WY→Z,根據(jù)傳遞律有XW→Z⑶已知Z Y
,由自反律知Y→Z,又因X→Y,所以由傳遞律可得X→Z數(shù)據(jù)庫原理及應(yīng)用1朱輝生(jssyzhs@)4.關(guān)于多值依賴的另一種定義是:給定一個關(guān)系模式R(X,Y,Z),其中,X,Y,Z可以是屬性或?qū)傩越M。設(shè)x
X,y
Y,z
Z,xz在R中的像集為:Yxz={r.Y|r.X=x∧r.Z=z∧r R}。定義:R(X,Y,Z)當且僅當Yxz=Yxz’對于每一組(x,z,z’)都成立,則Y對X多值依賴,記作X→→Y。這里,允許Z為空集,在Z為空集時,稱為平凡的多值依賴。證明:設(shè)Yxz=Yxz’對于每一組(x,z,z’)都成立,并設(shè)s,t是關(guān)系r中的兩個元組,s[X]=t[X],由上述定義的條件可知對于每一個z值,都對應(yīng)相同的一組y值。即對相同的x值,交換y值后所得的元組仍然屬于關(guān)系r,即定義5.9的條件成立。若定義5.9的條件成立,則對相同的x值,交換y值后所得的元組仍然屬于關(guān)系r,由于任意性及其對稱性,可知每個z值對應(yīng)相同的一組y值,所以Yxz=Yxz’對于每一組(x,z,z’)都成立。綜上,本定義和定義5.9的條件是等價的,所以兩定義等價。數(shù)據(jù)庫原理及應(yīng)用1朱輝生(jssyzhs@)5.試舉出3個多值依賴的實例。答:⑴關(guān)系模式MSC(M,S,C)中,M為專業(yè),S為學生,C為該專業(yè)的必修課。假設(shè)每個專業(yè)有多個學生,有一組必修課。設(shè)同專業(yè)內(nèi)所有學生選修的必修課相同。按照語義,對于M的每一個值Mi,S有一個完整的集合與之對應(yīng)而不管C取何值,所以M→→S。由于C與S的完全對稱性,必然有M→→C。⑵關(guān)系模式ISA(I,S,A)中,I為學生興趣小組,S為學生,A為某興趣小組的活動項目。假設(shè)每個興趣小組有多個學生,有若干活動項目。每個學生參加所在興趣小組的所有興趣活動項目,每個活動項目要求該興趣小組的所有學生參加。按照語義有I→→S,I→→A。⑶關(guān)系模式RDP(R,D,P)中,R為醫(yī)院病房,D為責任醫(yī)務(wù)人員,P為病人。假設(shè)每個病房住有多個病人,有多個責任醫(yī)務(wù)人員負責醫(yī)治和護理該病房的所有病人。按照語義有R→→D,R→→P。數(shù)據(jù)庫原理及應(yīng)用1朱輝生(jssyzhs@)6.第五章圖5.12表示一個公司各部門的層次結(jié)構(gòu)。對每個部門,數(shù)據(jù)庫中包含部門號(唯一的)D#、預(yù)算費(BUDGET)以及此部門領(lǐng)導人員的職工號E#(唯一的)信息。職工信息包括:職工號、他所參加的生產(chǎn)與科研項目號(J#)、他所在辦公室的電話號碼(PHONE#)。生產(chǎn)與科研項目包含:項目號(唯一的)、預(yù)算費。辦公室信息包含辦公室房間號(唯一的)、面積。對每個職工,數(shù)據(jù)庫中有他曾擔任過的職務(wù)以及擔任某一職務(wù)時的工資歷史。對每個辦公室包含此辦公室中全部電話號碼的信息。請給出你認為合理的數(shù)據(jù)依賴,把這個層次結(jié)構(gòu)轉(zhuǎn)換成一組規(guī)范化的關(guān)系。提示:此題可分步完成,第一步先轉(zhuǎn)換成一組1NF的關(guān)系,然后逐步轉(zhuǎn)換為2NF,3NF,BCNF。數(shù)據(jù)庫原理及應(yīng)用1朱輝生(jssyzhs@)答:⑴根據(jù)題中的語義假設(shè)給出一組函數(shù)依賴。語義假設(shè)為:一個職工不能同時成為多個部門的領(lǐng)導人;一個職工不能同時在多個部門就職;一個職工不能同時參加多個生產(chǎn)與科研項目;一個職工不能同時在兩個不同的辦公室辦公;一個職工不能同時擁有兩部或兩部以上的電話;一個生產(chǎn)與科研項目不能同時分配給多個部門;一個辦公室不能同時分配給多個部門;部門號、職工號、項目號、辦公室號碼及電話號碼是全局唯一的。⑵設(shè)計一組關(guān)系模式,它們都是屬于1NF的。部門DEPT(DEPT#,DBUDGET,MGR_EMP#),其中DEPT#和MGR_EMP#都是候選碼職工EMP1(EMP#,DEPT#,PROJ#,OFF#,PHONE#),候選碼為EMP#,但有PHONE#→OFF#,OFF#→DEPT#,PROJ#→DEPT#職務(wù)JOB(EMP#,JOBN),工資史SALHIST(EMP#,DATE,JOBN,SALARY)生產(chǎn)與科研項目PROJ(PROJ#,DEPT#,PBUDGET)辦公室OFFICE(OFF#,DEPT#,AREA),電話PHONE(PHONE#,OFF#)⑶分析可知,JOB的屬性全包含在SALHIST中,所以JOB可消去。數(shù)據(jù)庫原理及EM應(yīng)M應(yīng)P用1中OFF#,DEPT#都傳遞函數(shù)依賴1于主碼EMP#,故將EMP#朱分輝生解(j。ssyzhs@)分解為4個3NF的關(guān)系模式:EMP(EMP#,PROJ#,PHONE#)、X(PHONE#,OFF#)、Y(PROJ#,DEPT#)和Z(OFF#,DEPT#)然而X就是PHONE,Y是PROJ的投影,Z是OFFICE的投影,所以X、Y和Z都可以消去。最后得到如下6個關(guān)系模式,它們都是3NF,也是BCNF。DEPT(DEPT#,DBUDGET,MGR_EMP#)EMP(EMP#,PROJ#,PHONE#)SALHIST(EMP#
,DATE,JOBN,SALARY)PROJ(PROJ#,DEPT#,PBUDGET)OFFICE(OFF#,DEPT#,AREA)PHONE(PHONE#,OFF#)數(shù)據(jù)庫原理及應(yīng)用1朱輝生(jssyzhs@)12.下面的結(jié)論哪些是正確的,哪些是錯誤的?對于錯誤的結(jié)論請給出理由或給出一個反例說明之。數(shù)據(jù)庫原理及應(yīng)用1朱輝生(jssyzhs@)答:⑴任何一個二目關(guān)系都是屬于3NF的。⑵任何一個二目關(guān)系都是屬于BCNF的。⑶任何一個二目關(guān)系都是屬于4NF的?!獭獭挞犬斍覂H當函數(shù)依賴A→B在R上成立,關(guān)系R(A,B,C)等于其投影R1(A,B)
和R2(A,C)的連接。
×當A→B在R上成立,關(guān)系R(A,B,C)等于其投影R1(A,B)和R2(A,C)的連接。反之則不然。正確的是當且僅當函數(shù)依賴A→→B在R上成立,關(guān)系R(A,B,C)等于其投影R1(A,B)和R2(A,C)的連接。⑸若R.A→R.B,R.B→R.C,則R.A→R.C
√⑹若R.A→R.B,R.A→R.C,則R.A→R.(B,C)
√⑺若R.B→R.A,R.C→R.A,則R.(B,C)
→R.A
√⑻若R.(B,C)→R.A,則R.B→R.A,R.C→R.A
×反例:關(guān)系模式SC(S#,C#,G),(S#,C#)→G,但S#?G,C#?G。第七章 習題數(shù)據(jù)庫原理及應(yīng)用1朱輝生(jssyzhs@)n
1.試述數(shù)據(jù)庫設(shè)計過程。n
答:這里只概要列出數(shù)據(jù)庫設(shè)計過程的六個階段:(l
)需求分析;(2
)概念結(jié)構(gòu)設(shè)計;(3
)邏輯結(jié)構(gòu)設(shè)計;(4)數(shù)據(jù)庫物理設(shè)計;(5
)數(shù)據(jù)庫實施;(
6
)數(shù)據(jù)庫運行和維護。這是一個完整的實際數(shù)據(jù)庫及其應(yīng)用系統(tǒng)的設(shè)計過程。不僅包括設(shè)計數(shù)據(jù)庫本身,還包括數(shù)據(jù)庫的實施、運行和維護。設(shè)計一個完善的數(shù)據(jù)庫應(yīng)用系統(tǒng)往往是上述六個階段的不斷反復(fù)。n
2.
.數(shù)據(jù)字典的內(nèi)容和作用是什么?n
答:數(shù)據(jù)字典是系統(tǒng)中各類數(shù)據(jù)描述的集合。數(shù)據(jù)字典的內(nèi)容通常包括:(l
)數(shù)據(jù)項;(2
)數(shù)據(jù)結(jié)構(gòu);(3
)數(shù)據(jù)流;(4
)數(shù)據(jù)存儲;(5
)處理過程五個部分。其中數(shù)據(jù)項是數(shù)據(jù)的最小組成單位,若干個數(shù)據(jù)項可以組成一個數(shù)據(jù)結(jié)構(gòu)。數(shù)據(jù)字典通過對數(shù)據(jù)項和數(shù)據(jù)結(jié)構(gòu)的定義來描述數(shù)據(jù)流和數(shù)據(jù)存儲的邏輯內(nèi)容。數(shù)據(jù)字典的作用:數(shù)據(jù)字典是關(guān)于數(shù)據(jù)庫中數(shù)據(jù)的描述,在需求分析階段建立,是下一步進行概念設(shè)計的基礎(chǔ),并在數(shù)據(jù)庫設(shè)計過程中不斷修改、充實、完蓋。數(shù)據(jù)庫原理及應(yīng)用1朱輝生(jssyzhs@)n
2.請設(shè)計一個圖書館數(shù)據(jù)庫,此數(shù)據(jù)庫中對每個借閱者保存讀者記錄,包括:讀者號,姓名,地址,性別,年齡,單位。對每本書存有:書號,書名,作者,出版社。對每本被借出的書存有讀者號,借出日期和應(yīng)換日期。n
要求:給出E-R圖,再將其轉(zhuǎn)換為關(guān)系模型。數(shù)據(jù)庫原理及應(yīng)用1朱輝生(jssyzhs@)數(shù)據(jù)庫原理及應(yīng)用1朱輝生(jssyzhs@)n
關(guān)系模型為:讀者(讀者號,姓名,地址,性別,年齡,單位)書(書號,書名,作者,出版社)借書(讀者號,書號,借書日期,應(yīng)還日期)數(shù)據(jù)庫原理及應(yīng)用1朱輝生(jssyzhs@)P241第15題(參考答案)數(shù)據(jù)庫原理及應(yīng)用1朱輝生(jssyzhs@)n
學校(代號,校名)n
系(系號,學校代
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 加裝電梯加盟合同范本
- canying勞動合同范本
- 剝離工程合同范本
- 保理 保證合同范本
- 養(yǎng)鵝訂單合同范本
- 中介居間服務(wù)合同范本
- 催收咨詢服務(wù)合同范例
- 加工制作維修合同范例
- 保安服務(wù)合同補充合同范本
- 加盟店餐飲合同范例
- 氧化還原反應(yīng)配平專項訓練
- 2024年江蘇省中等職業(yè)學校學生學業(yè)水平考試機械CAD繪圖試卷(含5張圖)
- 2024年7天雙方無責任試崗期協(xié)議書模板
- 2025年中考復(fù)習必背外研版初中英語單詞詞匯(精校打?。?/a>
- 期末測試模擬卷(試題)-2023-2024學年五年級下冊數(shù)學人教版
- 全國教育科學規(guī)劃課題申報書:02.《鑄牢中華民族共同體意識的學校教育研究》
- 《船舶精通急救》全套教學課件
- 用藥安全課件教學課件
- 2024智能家居行業(yè)創(chuàng)新發(fā)展與前景展望研究報告
- (人教PEP2024版)英語一年級上冊Unit 5 教學課件(新教材)
- 腰椎術(shù)后失敗綜合征
評論
0/150
提交評論