第四版數(shù)據(jù)庫系統(tǒng)概論課后答案_第1頁
第四版數(shù)據(jù)庫系統(tǒng)概論課后答案_第2頁
第四版數(shù)據(jù)庫系統(tǒng)概論課后答案_第3頁
第四版數(shù)據(jù)庫系統(tǒng)概論課后答案_第4頁
第四版數(shù)據(jù)庫系統(tǒng)概論課后答案_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第3章關(guān)系數(shù)據(jù)庫標準語言SQL.試述sQL語言的特點。答:綜合統(tǒng)一。sQL語言集數(shù)據(jù)定義語言DDL、數(shù)據(jù)操縱語言DML、數(shù)據(jù)控制語言DCL的功能于一體。高度非過程化。用sQL語言進行數(shù)據(jù)操作,只要提出“做什么”,而無需指明“怎么做”,因此無需了解存取路徑,存取路徑的選擇以及sQL語句的操作過程由系統(tǒng)自動完成。面向集合的操作方式。sQL語言采用集合操作方式,不僅操作對象、查找結(jié)果可以是元組的集合,而且一次插入、刪除、更新操作的對象也可以是元組的集合。以同一種語法結(jié)構(gòu)提供兩種使用方式。sQL語言既是自含式語言,又是嵌入式語言。作為自含式語言,它能夠獨立地用于聯(lián)機交互的使用方式;作為嵌入式語言,它能夠嵌入到高級語言程序中,供程序員設(shè)計程序時使用。語言簡捷,易學易用。.試述sQL的定義功能。sQL的數(shù)據(jù)定義功能包括定義表、定義視圖和定義索引。SQL語言使用CREATETABLE語句建立基本表,ALTERTABLE語句修改基本表定義,DROPTABLE語句刪除基本表;使用CREATEINDEX語句建立索引,DROPINDEX語句刪除索引;使用CREATEVIEW語句建立視圖,DROPVIEW語句刪除視圖。.用sQL語句建立第二章習題5中的4個表。答:對于S表:S(SNO,SNAME,STATUS,CITY);建S表:CREATETABLES(SnoC(2)UNIQUE,SnameC(6),StatusC(2),CityC(4));對于P表:P(PNO,PNAME,COLOR,WEIGHT);建P表:CREATETABLEP(PnoC(2)UNIQUE,PnameC(6),COLORC(2),WEIGHTINT);對于J表:J(JNO,JNAME,CITY);建J表:CREATETABLEJ(JnoC(2)UNlQUE,JNAMEC(8),CITYC(4))對于sPJ表:sPJ(sNo,PNo,JNo,QTY);建SPJ表:SPJ(SNO,PNO,JNO,QTY)CREATETABLESPJ(SnoC⑵,PnoC(2),JNOC(2),QTYINT))針對上題中建立的4個表試用sQL語言完成第二章習題5中的查詢。(l)求供應(yīng)工程Jl零件的供應(yīng)商號碼SNO;SELECTDISTSNOFROMSPJWHEREJNO=’J1’(2)求供應(yīng)工程Jl零件Pl的供應(yīng)商號碼SNO;SELECTDISTSNOFROMSPJWHEREJNO=*J1,ANDPNO=*P1*(3)求供應(yīng)工程Jl零件為紅色的供應(yīng)商號碼SNO;SELECTSNOFROMSPJ,PWHEREJNO='J1'ANDSPJ.PNO=P.PNOANDCOLOR='紅'(4)求沒有使用天津供應(yīng)商生產(chǎn)的紅色零件的工程號JNO;SELECTDISTJNOFROMSPJWHEREJNONOTIN(SELEJNOFROMSPJ,P,SWHERES.CITY=,天津'ANDCOLOR='紅'ANDS.SNO=SPJ.SNOANDP?PNO=SPJ?PNO)。(5)求至少用了供應(yīng)商Sl所供應(yīng)的全部零件的工程號JNO;由于VFP不允許子查詢嵌套太深,將查詢分為兩步A、 查詢S1供應(yīng)商供應(yīng)的零件號SELECTDISTPNOFROMSPJWHERESNO='S1'結(jié)果是(P1,P2)B、 查詢哪一個工程既使用P1零件又使用P2零件。SELECTJNOFROMSPJWHEREPNO='P1'ANDJNOIN(SELECTJNOFROMSPJWHEREPNO='P2')針對習題3中的四個表試用SQL語言完成以下各項操作:找出所有供應(yīng)商的姓名和所在城市。SELECTSNAME,CITYFROMS⑵找出所有零件的名稱、顏色、重量。SELECTPNAME,COLOR,WEIGHTFROMP找出使用供應(yīng)商S1所供應(yīng)零件的工程號碼。SELECTDISTJNOFROMSPJWHERESNO=,S1,找出工程項目J2使用的各種零件的名稱及其數(shù)量。SELECTPNAME,QTYFROMSPJ,PWHEREP?PNO=SPJ?PNOANDSPJ?JNO='J2'找出上海廠商供應(yīng)的所有零件號碼。SELECTPNOFROMSPJ,SWHERES?SNO=SPJ?SNOANDCITY=*上海'出使用上海產(chǎn)的零件的工程名稱。SELECTJNAMEFROMSPJ,SJWHERES.SNO=SPJ.SNOANDS?CITY='上海'ANDJ.JNO=SPJ.JNO⑺找出沒有使用天津產(chǎn)的零件的工程號碼。注意:SELECTDISPJNOFROMSPJWHEREJNONOTIN(SELECTDISTJNOFROMSPJ,SWHERES.SNO=SPJ.SNOANDS?CITY='天津')適用于JNO是唯一或不唯一的情況?注意:SELECTDISTJNOFROMSPJ,SWHERES.SNO=SPJ.SNOANDS,CITY<>,天津適用于JNO是唯一的情況把全部紅色零件的顏色改成藍色。UPDATEPSETCOLOR=藍'WHERECOLORS'由S5供給J4的零件P6改為由S3供應(yīng)。UPDATESPJSETSNO='S3'WHERESNO='S5'ANDJNO=,J4,ANDPNO=,P6,從供應(yīng)商關(guān)系中刪除供應(yīng)商號是S2的記錄,并從供應(yīng)情況關(guān)系中刪除相應(yīng)的記錄。A、 DELETEFROMSWHERESNO=’S2’B、 DELETEFROMSPJWHERESNO=‘S2’請將(S2,J6,P4,200)插入供應(yīng)情況關(guān)系。INSERTINTOSPJVALUES(*S2’,‘J6’,‘P4’,200).什么是基本表?什么是視圖?答兩者的區(qū)別和聯(lián)系是什么?基本表是本身獨立存在的表,在sQL中一個關(guān)系就對應(yīng)一個表。視圖是從一個或幾個基本表導出的表。視圖本身不獨立存儲在數(shù)據(jù)庫中,是一個虛表。即數(shù)據(jù)庫中只存放視圖的定義而不存放視圖對應(yīng)的數(shù)據(jù),這些數(shù)據(jù)仍存放在導出視圖的基本表中。視圖在概念上與基本表等同,用戶可以如同基本表那樣使用視圖,可以在視圖上再定義視圖。.試述視圖的優(yōu)點。答(l)視圖能夠簡化用戶的操作;(2)視圖使用戶能以多種角度看待同一數(shù)據(jù);(3)視圖對重構(gòu)數(shù)據(jù)庫提供了一定程度的邏輯獨立性;(4)視圖能夠?qū)C密數(shù)據(jù)提供安全保護。.所有的視圖是否都可以更新?為什么?答:不是。視圖是不實際存儲數(shù)據(jù)的虛表,因此對視圖的更新,最終要轉(zhuǎn)換為對基本表的更新。因為有些視圖的更新不能惟一有意義地轉(zhuǎn)換成對相應(yīng)基本表的更新,所以,并不是所有的視圖都是可更新的..哪類視圖是可以更新的?哪類視圖是不可更新的?各舉一例說明。答:基本表的行列子集視圖一般是可更新的。若視圖的屬性來自集函數(shù)、表達式,則該視圖肯定是不可以更新的。.試述某個你熟悉的實際系統(tǒng)中對視圖更新的規(guī)定。答VFP請為三建工程項目建立一個供應(yīng)情況的視圖,包括供應(yīng)商代碼(SNO)、零件代碼(PNO)、供應(yīng)數(shù)量(QTY)。CREATEVIEWVSPASSELECTSNO,PNO,QTYFROMSPJJWHERESPJ.JNO=J.JNOANDJ.JNAME=三建'針對該視圖VSP完成下列查詢:找出三建工程項目使用的各種零件代碼及其數(shù)量。SELECTDISTPNO,QTYFROMVSP找出供應(yīng)商S1的供應(yīng)情況。SELECTDIST*FROMVSPWHERESNO='S1'第6章關(guān)系數(shù)據(jù)庫理論1.理解并給出下列術(shù)語的定義:函數(shù)依賴、部分函數(shù)依賴、完全函數(shù)依賴、傳遞依賴、候選碼、主碼、外碼、全碼(All一key)、1NF、ZNF、3NF、BcNF、多值依賴、4NF。定義1:設(shè)R(U)是屬性集U上的關(guān)系模式。X,Y是屬性集U的子集。若對于&@)的任意一個可能的關(guān)系r,r中不可能存在兩個元組在X上的屬性值相等,而在Y上的屬性值不等,則稱X函數(shù)確定Y或Y函數(shù)依賴于X,記作X9Y。(即只要X上的屬性值相等,Y上的值一定相等。)術(shù)語和記號:X9Y,但Y不是X的子集,則稱X3Y是非平凡的函數(shù)依賴。若不特別聲明,總是討論非平凡的函數(shù)依賴。X9Y,但Y是X的子集,則稱X今Y是平凡的函數(shù)依賴。若X9Y,則X叫做決定因素(Determinant)o若X9Y,Y今X,則記作X。今Y。、若Y不函數(shù)依賴于X,則記作X今Yo定義2:在R(U)中,如果X9Y,并且對于X的任何一個真子集買,都有X9Y,則稱Y對X完全函數(shù)依賴若X9Y,但Y不完全函數(shù)依賴于X,則稱Y對X部分函數(shù)依賴定義3:若關(guān)系模式R的每一個分量是不可再分的數(shù)據(jù)項,則關(guān)系模式R屬于第一范式(1NF)。定義4:若關(guān)系模式RC1NF,且每一個非主屬性完全函數(shù)依賴于碼,則關(guān)系模式R£2NF。(即1NF消除了非主屬性對碼的部分函數(shù)依賴則成為2NF)o定義5:關(guān)系模式R<U,F>中若不存在這樣的碼X、屬性組Y及非主屬性Z(Z不是Y的子、集)使得X9Y,Y今X,Y今Z成立,則稱R<U,F>e3NF。定義6:關(guān)系模式R<U,F>£1NF。若X9Y且Y不是X的子集時,X必含有碼,則R<U,F>cBCNFo定義7:關(guān)系模式R<U,F>C1NF,如果對于R的每個非平凡多值依賴X9今Y(Y不是X的子集,Z=U-X-Y不為空),X都含有碼,則稱R<U,F>E4NFo2.解:(1)關(guān)系模式如下:學生:S(Sno,Sname,Sbirth,Dept,Class,Rno)班級:C(Class,Pname,Dept,Cnum,Cyear)系:D(Dept,Dno,Office,Dnum)學會:M(Mname,Myear,Maddr,Mnum)每個關(guān)系模式的最小函數(shù)依賴集如下:A、學生S(Sno,Sname,Sbirth,Dept,Class,Rno)的最小函數(shù)依賴集如下:Sno今Sname,Sno9Sbirth,Sno今Class,Class9Dept,DEPT9Rno傳遞依賴如下:由于Sno9Dept,而Dept9Sno,Dept9Rno(宿舍區(qū))所以Sno與Rno之間存在著傳遞函數(shù)依賴。由于Class9DeptDept今Class,Dept9Rno所以Class與Rno之間存在著傳遞函數(shù)依賴。由于Sno^Class,ClassiSno,ClassiDept所以Sno與Dept之間存在著傳遞函數(shù)依賴。B、班級C(Class,Pname,Dept,Cnum,Cyear)的最小函數(shù)依賴集如下:ClassiPname,ClassiCnum,ClassiCyear,PnameiDept.由于ClassiPname,PnameiClass,PnameiDept所以C1ass與Dept之間存在著傳遞函數(shù)依賴。C、系D(Dept,Dno,Office,Dnum)的最小函數(shù)依賴集如下:DeptiDno,DnoiDept,DnoiOffice,DnoiDnum根據(jù)上述函數(shù)依賴可知,Dept與Office,Dept與Dnum之間不存在傳遞依賴。。、學會M(Mname,Myear,Maddr,Mnum)的最小函數(shù)依賴集如下:MnameiMyear,MnameiMaddr,MnameiMnum該模式不存在傳遞依賴。(3)各關(guān)系模式的候選碼、外部碼,全碼如下:A、 學生S候選碼:Sno;外部碼:Dept、Class;無全碼B、 班級C候選碼:Class;外部碼:Dept;無全碼C、 系D候選碼:Dept或Dno;無外部碼;無全碼。、學會M候選碼:Mname;無外部碼;無全碼5.試舉出3個多值依賴的實例。答:(1) 關(guān)系模式MSC(M,S,C)中,M表示專業(yè),S表示學生,C表示該專業(yè)的必修課。假設(shè)每個專業(yè)有多個學生,有一組必修課。設(shè)同專業(yè)內(nèi)所有學生選修的必修課相同,實例關(guān)系如下。按照語義對于M的每一個值Mi,s有一個完整的集合與之對應(yīng)而不問C取何值,所以M一一S。由于C與S的完全對稱性,必然有M—一C成立。(2) 關(guān)系模式ISA(I,S,A)中,I表示學生興趣小組,S表示學生,A表示某興趣小組的活動項目。假設(shè)每個興趣小組有多個學生,有若干活動項目。每個學生必須參加所在興趣小組的所有活動項目,每個活動項目要求該興趣小組的所有學生參加。按照語義有I一一S,I一一A成立。(3) 關(guān)系模式RDP(R,D,P)中,R表示醫(yī)院的病房,D表示責任醫(yī)務(wù)人員,P表示病人。假設(shè)每個病房住有多個病人,有多個責任醫(yī)務(wù)人員負責醫(yī)治和護理該病房的所有病人。下面的結(jié)論哪些是正確的?哪些是錯誤的?對于錯誤的請給一個反例說明之。(1) 任何一個二目關(guān)系是屬于3NF。答:正確。因為關(guān)系模式中只有兩個屬性,所以無傳遞。(2) 任何一個二目關(guān)系是屬于BCNF.答:正確。按BCNF的定義,若XiY且Y不是X的子集時,每個決定因素都包含碼,對于二目關(guān)系決定因素必然包含碼。詳細證明如下:(任何二元關(guān)系模式必定是BCNF)。證明:設(shè)R為一個二目關(guā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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論