九九热最新网址,777奇米四色米奇影院在线播放,国产精品18久久久久久久久久,中文有码视频,亚洲一区在线免费观看,国产91精品在线,婷婷丁香六月天

《數(shù)據(jù)庫系統(tǒng)概論》形考冊答案

上傳人:無*** 文檔編號:20559086 上傳時(shí)間:2021-03-29 格式:DOC 頁數(shù):30 大小:83.51KB
收藏 版權(quán)申訴 舉報(bào) 下載
《數(shù)據(jù)庫系統(tǒng)概論》形考冊答案_第1頁
第1頁 / 共30頁
《數(shù)據(jù)庫系統(tǒng)概論》形考冊答案_第2頁
第2頁 / 共30頁
《數(shù)據(jù)庫系統(tǒng)概論》形考冊答案_第3頁
第3頁 / 共30頁

下載文檔到電腦,查找使用更方便

15 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《《數(shù)據(jù)庫系統(tǒng)概論》形考冊答案》由會員分享,可在線閱讀,更多相關(guān)《《數(shù)據(jù)庫系統(tǒng)概論》形考冊答案(30頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。

1、數(shù)據(jù)庫系統(tǒng)概論作業(yè) 11.簡述數(shù)據(jù)、數(shù)據(jù)模型、數(shù)據(jù)庫、關(guān)系數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)、數(shù)據(jù)庫系統(tǒng)的概念。答:數(shù)據(jù):存儲在計(jì)算機(jī)內(nèi)用來描述事物特征的各種符號及其組合,稱為數(shù)據(jù)。它不但包括數(shù)字,還包括文字、圖形、圖像、聲音等。數(shù)據(jù)模型:數(shù)據(jù)模型是一種對客觀事物抽象化的表現(xiàn)形式。數(shù)據(jù)模型首先要真實(shí)地反映現(xiàn)實(shí)世界,;其次要易于理解,和人們對外部事物的認(rèn)識相一致;最后要便于實(shí)現(xiàn),因?yàn)樽罱K是要由計(jì)算機(jī)來處理。數(shù)據(jù)模型通常由數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作和完整性約束三要素組成。數(shù)據(jù)庫:簡稱DB,是由DBMS管理的數(shù)據(jù)的聚集。是儲存在計(jì)算機(jī)內(nèi)具有一定結(jié)構(gòu)的數(shù)據(jù)集合。 關(guān)系數(shù)據(jù)庫:是以關(guān)系模型為基礎(chǔ)的數(shù)據(jù)庫?;蛘哒f數(shù)據(jù)庫里的數(shù)

2、據(jù)可以用一個(gè)二維表的的形式表示的數(shù)據(jù)庫。數(shù)據(jù)庫管理系統(tǒng):簡稱DBMS,是專門用于建立和管理數(shù)據(jù)庫的一套軟件,介于應(yīng)用程序和操作系統(tǒng)之間。它不僅具有最基本的數(shù)據(jù)管理功能,還能保證數(shù)據(jù)的完整性、安全性、提供多用戶的并發(fā)控制,當(dāng)數(shù)據(jù)庫出現(xiàn)故障時(shí)對系統(tǒng)進(jìn)行恢復(fù)。DBMS主要由查詢處理程序、事務(wù)處理程序和存儲管理程序等組成。數(shù)據(jù)庫系統(tǒng):簡稱DBS,使指引進(jìn)數(shù)據(jù)庫技術(shù)后的計(jì)算機(jī)系統(tǒng),它包括和數(shù)據(jù)庫有關(guān)的整個(gè)系統(tǒng):計(jì)算機(jī)軟硬件系統(tǒng)、數(shù)據(jù)庫、DBMS、應(yīng)用程序以及數(shù)據(jù)庫管理員和用戶等等。2答:主要特點(diǎn):數(shù)據(jù)結(jié)構(gòu)化;數(shù)據(jù)共享性好,冗余度小,數(shù)據(jù)獨(dú)立性好;數(shù)據(jù)由DBMS統(tǒng)一管理和控制,從而保證多個(gè)用戶能并發(fā)、安全

3、可靠地訪問,而一旦出現(xiàn)故障,能有效恢復(fù)。3假設(shè)學(xué)生關(guān)系Student包括五個(gè)屬性:學(xué)號StudentNo、姓名StudentName、年齡StudentAge、性別StudentSex和所在系Department。(1)指出該關(guān)系的鍵碼和屬性的類型;2)給出三個(gè)適當(dāng)?shù)脑M。答:(1)該關(guān)系的鍵碼是:學(xué)號;屬性的類型:學(xué)號:字符型;姓名:字符型;年齡:整型;性別:布爾型;所在系:字符型。(2)學(xué)號姓名 年齡 性別 所在系991510000張三 25 .T.計(jì)算機(jī) 991510078李四 24 .T. 化學(xué)981501008王燕 25.F. 中文4同三5.請為計(jì)算機(jī)經(jīng)銷商設(shè)計(jì)一個(gè)數(shù)據(jù)庫,要求包括生

4、產(chǎn)廠商和產(chǎn)品的信息。生產(chǎn)廠商的信息包括名稱、地址、電話等;產(chǎn)品的信息包括生產(chǎn)商、品牌、配置、近價(jià)等。試用ODL描述這個(gè)數(shù)據(jù)庫,注意要為所有的屬性和聯(lián)系選擇適當(dāng)?shù)念愋停⑶抑赋雒總€(gè)類的鍵碼。答案:interfaceProduce(keyname) attributestringname;attributestringaddress;attributestringtel;relationashipSet produces inverseProduct:ProducedBy;interfaceProduct (key(brand,model) attributestringbrand;attribu

5、testringmodel;attributeintegerprice;relationashipProducerproducedBy inverseProducer:Produces;7.假設(shè)題5的數(shù)據(jù)庫中,計(jì)算機(jī)產(chǎn)品類有了一個(gè)筆記本電腦子類,該子類本身擁有尺寸(長、寬、厚度)、電池型號等屬性,試重新設(shè)計(jì)數(shù)據(jù)庫,將增加的部分分別用ODL和E/R圖描述。答:(1)ODL:interfaceComputerProduct :Product interfacePortableComputer:ComputerProduct attributefloatLength;attributefloatWi

6、de;attributefloatThick;attributestringBatteryTypeProductBrandNameConfigureBegetterTypeInpriceisaComputerProductisaPortableComputerLengthWideThick k(2)E/R圖: 8、如果某關(guān)系的實(shí)例滿足下列條件之一,要表示該實(shí)例,有多少種不同的方法(考慮元組的順序和屬性的順序):(1) 3個(gè)屬性,3個(gè)元組(2) 4個(gè)屬性,5個(gè)元組(3) m個(gè)屬性,n個(gè)元組答:(1)3!*3!=36(2)4!*5!=24*120=2880(3)m個(gè)屬性可有m!種不同的排列順序,n

7、個(gè)元組可有n!種不同的排列順序,因此共有m! * n!種不同的排列順序。9.將題5的ODL設(shè)計(jì)轉(zhuǎn)換成關(guān)系數(shù)據(jù)庫模型。答案:轉(zhuǎn)換為關(guān)系模式為:Producer (name,address,tel);Product (brand,model,name);(注:其中name為廠商名,若同一廠商提供多種產(chǎn)品需建立多個(gè)記錄) 10.下圖表示的是一個(gè)航空公司的E/R圖,試將其轉(zhuǎn)換為關(guān)系數(shù)據(jù)庫模式。CustomerFlightNoNameDateSeatNumberKintAddressBookingg其中Customer表示乘客,有三個(gè)屬性:乘客號No,姓名Name和地址Address,F(xiàn)light表示航

8、班,頁有三個(gè)屬性:航班號Number,日期Date和機(jī)型Kind;Booking表示乘客訂票的信息,有一個(gè)屬性:Seat。答案:轉(zhuǎn)換為關(guān)系模式為:Customer(No,Name,Address)Flight(Number,Date,Kint)Booking(No,Number,Date,Seat)11.假設(shè)學(xué)生選課數(shù)據(jù)庫如下:Student(Sno,Sname,Age,Dept) Couse(Cno,Cname,Teacher) SC(Sno,Cno,Score)用關(guān)系代數(shù)分別進(jìn)行如下查詢:(1)學(xué)號為9900111的學(xué)生的系別和年齡;(2)有不及格(成績60學(xué)生的課程名;(3)計(jì)算機(jī)系有不

9、及格課程的學(xué)生名單;(4)學(xué)生張林的“數(shù)據(jù)庫原理”課成績。答案:(1)Dept,Sage(Sno=9900111(Student)(2)Cname(score60(SC)Course)(3)Sname(score60(SC)Dept=計(jì)算機(jī)系(Student)(4)Score(sname=張林(Stident)SC (Cname=數(shù)據(jù)庫原理(Course)12.分別用元組關(guān)系運(yùn)算和域關(guān)系演算表示題11中的查詢。(1)學(xué)號為9900111的學(xué)生的系別和年齡;(2)有不及格(成績60學(xué)生的課程名;(3)計(jì)算機(jī)系有不及格課程的學(xué)生名單;(4)學(xué)生張林的“數(shù)據(jù)庫原理”課成績。答案: 元組關(guān)系運(yùn)算:(1

10、) (2) (3)(4) 域關(guān)系演算:1)Dept,Sage(Sno=9900111(Student)(2)Cname(score60(SC) Course)(3)Sname(score60(SC) Dept=計(jì)算機(jī)系(Student)(4)Score(sname=張林(Stident) SC(Cname=數(shù)據(jù)庫原理(Course)1213.用數(shù)據(jù)庫邏輯規(guī)則表示習(xí)題一中的查詢。(1)學(xué)號為9900111的學(xué)生的系別和年齡;(2)有不及格(成績60學(xué)生的課程名;(3)計(jì)算機(jī)系有不及格課程的學(xué)生名單;(4)學(xué)生張林的“數(shù)據(jù)庫原理”課成績。答案: (1)S (D,A Student(SNo,SN,A

11、,D) AND SNO=9900111(2)C (CN) Course (CNo,CN) AND SC (SNo,CNo,S) AND S60(3)S (S,N) Student(SNo,SN,A,D) AND SC (SNo,CNo,S) AND D=計(jì)算機(jī)系 AND S60(4)U (S) Student(SNo,SN,A,D) AND SC (SNo,CNo,S) AND Course (CNo,CN) AND SN=張林 AND CN=數(shù)據(jù)庫原理14.畫出題11中查詢(4)的關(guān)系代數(shù)表達(dá)樹。 ScoreSName=張林CName=數(shù)據(jù)庫原理StudentCoureSC數(shù)據(jù)庫系統(tǒng)概論作業(yè)

12、21.一個(gè)電影資料數(shù)據(jù)庫有三個(gè)基本表:電影表Movie(含電影名、制作年份、長度、是否彩色、制片商)、演員表Actor(含演員姓名、地址、性別、出生年月)和電影主演表Acts(電影名、制作年份、演員姓名)。用AQL的建表語句建立這三個(gè)基本表,有注意合理地選擇屬性的數(shù)據(jù)類型。答案:CREATE TABLE Movie(Title CHAR(30),Year INT,Length INT);CREATE TABLE Actor(Name CHAR(20),Gender VARCHAR(30),Length CHAR(1)Birthdate DATECREATE TABLE Acts(MoiveTi

13、tle CHAR(30),MoiveYear INT,ActorName CHAR(20)2.在題1建立的表的基礎(chǔ)上,用SQL實(shí)現(xiàn)如下查詢或更新操作:(1)統(tǒng)計(jì)1999年制作電影的平均長度和最短長度;(2)在1999年主演過電影的演員姓名;(3)所有同名電影各自的電影名和制作年份;(4)往演員關(guān)系A(chǔ)ctor插入一個(gè)演員記錄,具體的數(shù)據(jù)值由你指定;(5)把電影“我的世界“的長度改為109分鐘;(6)刪除1940年以前制作的所有電影記錄以及電影主演記錄。答案:(1)SELECT AVG (Length),MIN(Length) FROM Movie WHERE Year=1999;(2)SELEC

14、T ActorName FROM Acts WHERE MovieYear=1999;(3)SELECT M1.Title,M1.Year,M2.Year FROM Movie AS M1, Movie AS M2 WHERE M1.Title=M2.Title AND M1.YearM2.Year(4)INSERT INTO Actor(Name,Gender)VALUES(秀蘭鄧波兒,F);(5)UPDATE Movie SET Length=109 WHERE Title=我的世界;(6)DELETE FROM Movie WHERE Year1940;DELETE FROM Acts

15、WHERE MovieYear1940;3.在題1建立的表但是基礎(chǔ)上,要求為Movie關(guān)系增加一個(gè)屬性MovieDirector(電影導(dǎo)演)。用SQL實(shí)現(xiàn)這種關(guān)系模式的改變。答案:ALTER TABLE MovieADD MovieDirector CHAR(20)4假設(shè)學(xué)生一課程數(shù)據(jù)庫關(guān)系模式如下:Student(Sno,Sname,Sage,Ssex) Course(Cno,Cname,Teacher) SC(Sno,Cno,Grade)用SQL語句表達(dá)下列查詢:(1)找出劉老師所授課程的課程號和課程名。(2)找出年齡小于22歲女學(xué)生的學(xué)號和姓名。(3)找出至少選修劉老師講的一門課的學(xué)生姓

16、名。(4)找出“程序設(shè)計(jì)”課成績在90分以上的學(xué)生姓名。(5)找出不學(xué)C3課的學(xué)生姓名。(6)找出至少選修C1課和C2課的學(xué)生學(xué)號。答案:(1)SELECT Cno,CnameFORM CourseWHIRE Teacher LIKE 劉%;(2)SELECT Sno,SnameFORM StudentWHIRE Sage90;(5)SELECT SnameFORM StudentWHIRE NOT EXISTS (SELECT *FORM SCWHIRE Sno=Student.Sno AND Cno=C3);(6)SELECT X.Sno FROM SC AS X, SC AS Y WHE

17、RE X.Sno=Y.Y.Sno AND X.Cno=C1 AND Y.Cno=C2;5.按照題4的數(shù)據(jù)庫模式謝出下列查詢:(1)求孫老師講的每門課的學(xué)生平均成績。(2)統(tǒng)計(jì)選修各門課的學(xué)生人數(shù)。輸出課程號和人數(shù)。查詢結(jié)果按人數(shù)降序排列,若人數(shù)相同,則按課程號升序排列。答案: (1)SELECT Cno,AVG(Grade)FORM SC,CourseWHERE SC.Cno=Course.Cno AND Teacher LIKE 孫%GROUP BY Cno (2)SELECT Cno,COUNT(*)FORM SCGROUP BY CnoORDER BY COUNT(*)DESC,Cno6

18、.用SQL的更新語句表達(dá)對學(xué)生-課程數(shù)據(jù)庫的下列更新操作:(1)往學(xué)生關(guān)系Student中插入一個(gè)學(xué)生元組(990012,梅立松,20,女)。(2)從學(xué)生選課關(guān)系SC中刪除夏春秋同學(xué)的所有元組。(3)在學(xué)生選課關(guān)系SC中,把英語課的成績提高10%。答案:(1)INSERT INTO Student VALUES(990012,梅立松,20,女);(2)DELETE FORM SCWHERE Sno IN (SELECT Sno FORM Student WHERE Sname=夏春秋);(3)UPDATE SC SET Grade=1.1*GradeWHERE Cno IN(SELECT Cn

19、oFORM CourseWHERE Cname=英語);8.從學(xué)生選課數(shù)據(jù)庫中查詢選修“數(shù)據(jù)庫原理”課并且成績在90分以上的學(xué)生名單,SQL語句序列如下:SELECT StudentNameFORM Student,Course,StudentCourseWHERE Student.StudentNo= StudentCourse.StudentNo AND Course.CourseNo= StudentCourse.CourseNo AND Course.CourseName=數(shù)據(jù)庫原理 AND StudentCourse.Score909.設(shè)T1、T2是如下兩個(gè)事務(wù):T1:A=B*2T2

20、:B=A+1A、B的初值分別是1和3。(1)設(shè)T1和T2可以并發(fā)執(zhí)行,并且對其操作的調(diào)度不加限制,那么它們的并發(fā)執(zhí)行可能產(chǎn)生哪幾種結(jié)果(寫出最后A、B的值)?(2)這些執(zhí)行結(jié)果中哪些是正確的?答案:解:(1)第一種調(diào)度:讀A=1,B=3: (TI)A=B*2=6(T1)寫回A=6,B=3 (T1)讀A=6,B=3 (T2)B=A+1=7 (T2)寫回A=6,B=7(T2)結(jié)果:A=6,B=7第二種調(diào)度:讀A=1,B=3: (T2)B=A+1=2(T2)寫回A=1,B=2 (T2)讀A=1,B=2 (T1)A=B*2=4 (T1)寫回A=4,B=2(T2)結(jié)果:A=4,B=2第三種調(diào)度:讀A=1

21、,B=3: (T1)讀A=1,B=3 (T2)A=B*2=6(T1)B=A+1=2(T2)寫回A=6,B=3 (T1)寫回A=1,B=2(T2)結(jié)果:A=1,B=2第四種調(diào)度:讀A=1,B=3: (T2)讀A=1,B=3 (T1)B=A+1=2(T2)A=B*2=6(T1)寫回A=1,B=2 (T2)寫回A=6,B=3 (T1)結(jié)果:A=6,B=3第五種調(diào)度:讀A=1,B=3: (T1)A=B*2=6(T1)讀A=1,B=3 (T2)B=A+1=2(T2)寫回A=6,B=3 (T1)寫回A=1,B=2(T2)結(jié)果:A=1,B=2第六種調(diào)度:讀A=1,B=3: (T2)B=A+1=2(T2)讀A

22、=1,B=3 (T1)A=B*2=6(T1)寫回A=1,B=2 (T2)寫回A=6,B=3 (T1)結(jié)果:A=6,B=3(2)第一種結(jié)果:A=6,B=7;和第二種結(jié)果:A=4,B=2正確。根據(jù)可串行化的原則,兩個(gè)事務(wù)并發(fā)執(zhí)行的結(jié)果只要和任意一種串行的結(jié)果相同,就認(rèn)為是正確的。數(shù)據(jù)庫系統(tǒng)概論作業(yè)31、 舉例說明不符合2NF,3NF和BCNF的關(guān)系模式,如何使之符合相應(yīng)范式?答:第一種方法:先求各種屬性組合的封閉集,再從中找出新的函數(shù)依賴。 A+=ABCDB+=BCDC+=C D+=D A C,AD (2) A B+=ABCD A C+=ABCDA D+=ABCD BC+=BCD BD+=BCDC

23、D+=CD ABC,ABD ACB,ACD ADB,ADC BCDBDC(8) A B C+=ABCD A B D+=ABCD BCD+=BCD ABCD ABDC (2) A B C D+=ABCD蘊(yùn)含于給定函數(shù)依賴的非平凡函數(shù)依賴共12個(gè)。2) A為鍵碼。3) AB,AC,AD,ABC,ABD,ABCD為超鍵碼。第二種方法:在Student(Sno,Sname,Sdept,Mname,Cname,Grade)中存在依賴:Sno,CnameSname,Sdept,Mname左邊是鍵碼,但是右邊的非主屬性都部分依賴SnoSno SnameSno SdeptSno Mname所以Student不

24、是2NFStudent可以分解為以下模式Student(Sno,Sname,Sdept,Mname)SC(Sno,Cname,Grade)在Student中鍵碼是Sno,其它都是非主屬性,它們都完全函數(shù)依賴于Sno在SC中,鍵碼是Sno,Cname,只有一個(gè)非主屬性Grade,它完全函數(shù)依賴于鍵碼所以分解后的關(guān)系模式是2NFSupplyer(SpNo,City,Area,Phone)SpNo供應(yīng)商編號Area城市所在地區(qū)其中,SpNo是鍵碼函數(shù)依賴有SpNoCity,SpNo Area,SpNo PhoneCity Area所有的非主屬性都完全函數(shù)依賴于鍵碼,所以Supplyer是2NF。Sp

25、No City,City Area,所以Area傳遞依賴于鍵碼,且Aera是非主屬性。Supplyer不是3NF。Student(Sno,Sname,Sdept,Mname)SC(Sno,Cname,Grade)是2NF但是在Student中:Sno Sdept,Sdept Mname非主屬性Mname傳遞依賴于鍵碼Sno所以以上關(guān)系模式不是3NF。 將Student分解為:Student(Sno,Sname,Sdept)Dept(Sdept,Mname)Sdept是關(guān)系Dept的鍵碼Student(Sno,Sname,Sdept)Dept(Sdept,Mname)SC(Sno,Cname,G

26、rade)是3NF在一個(gè)關(guān)系模式的所有非平凡函數(shù)依賴中,如果所有決定因素都包含鍵碼,即決定因素是超鍵,則該關(guān)系模式屬于BCNF例1:C(City,Street,Zip)其中鍵碼是City,StreetCity主屬性,Street主屬性,Zip非主屬性City,StreetZipZip CityZip不是超鍵碼所以關(guān)系C是3NF,但不是BCNF假如有關(guān)系模式R(A,B,C,D)和函數(shù)依賴集S=B-C,B-D。(1)找出所有BCNF違例。(2)如果該關(guān)系模式不是BCNF,則將它分解為BCNF(3)找出所有的違背3NF的依賴(4)如果該關(guān)系不是3NF,則將它分解為3NF步驟一:找出R在S上的所有非平

27、凡依賴,首先計(jì)算封閉集單屬性封閉集:A+=A,B+=BCD,C+=C,D+=D雙屬性封閉集:AB+=ABCD,AC+=AC,AD+=AD,BC+=BCD,BD+=BCD,CD+=CD三屬性封閉集:ABC+=ABCD,ABD+=ABCD,BCD+=BCD,ACD+=ACD四屬性封閉集:ABCD+=ABCD步驟二:根據(jù)計(jì)算所得的封閉集,找出鍵碼和超鍵碼鍵碼:AB超鍵碼:ABC,ABD,ABCD步驟三:找出所有的非平凡函數(shù)依賴B-C,B-D,AB-C,AB-D,BC-D,BD-CABC-D,ABD-C其中:AB-C,AB-D,ABC-D,ABD-C 而:B-C,B-D,BC-D,BD-C是BCNF違

28、例步驟四:進(jìn)行BCNF規(guī)范。BCNF違例自成一體。從以上BCNF違例中選擇B-C自成一體R1(B,C)舍其右全集歸一,即舍去B-C的右邊屬性C,所以得到R2(A,B,D)在R2中還存在BCNF違例B-D,因此B-D自成一體,得到R21(B,D),舍其右全集歸一得到R22(A,B)最后得到的關(guān)系模式是:R1(B,C),R21(B,D),R22(A,B)AB是鍵碼,所以A,B是主屬性,而C,D都是鍵碼以外的屬性,所以C,D都是非主屬性。2、假設(shè)關(guān)系模式為R(A,B,C,D),函數(shù)依賴為AB,BC和BD。(1)求蘊(yùn)含給定函數(shù)依賴的所有非平凡函數(shù)依賴。(2)求R的所有鍵碼和超鍵碼。(3)判斷該模式為第

29、幾范式?為什么?答案:(1)求A+,有A+=A,因?yàn)锳B,所以A+=A,B;因?yàn)锽C,所以A+=A,B,C;因?yàn)锽D,所以A+=A,B,C,D。因此A為Key,推出新依賴:(1) AC,(2) AD。求B+,有B+=B;因?yàn)锽C,所以B+=B,C;因?yàn)锽D, 所以B+=B,C,D。求C+,有C+=C。求D+,有D+=D。求AB+,有AB+=A,B;因?yàn)锽C,所以AB+=A,B,C;因?yàn)锽D,所以AB+=A,B,C,D。推出新依賴:(3) ABC,(4) ABD。求AC+,有AC+=A,C;因?yàn)锳B,所以AC+=A,C,B;因?yàn)锽D,所以AC+=A,C,B,D。推出新依賴:(5) ACB, (6

30、) AC求AD+,有AD+=A,D;因?yàn)锳B,所以AD+=A,D,B;因?yàn)锽C,所以AD+=A,D,B,C。推出新依賴:(7) ADB, (8) ADC。求BC+,有BC+=B,C;因?yàn)锽D,BC+=B,C,D。推出新依賴:(9) BCD。求BD+,有BD+=B,D;因?yàn)锽C,所以BD+=B,C,D。推出新依賴:(10) BDC。求CD+,有CD+=C,D。求ABC+,有ABC+=A,B,C;因?yàn)锽D,所以ABC+=A,B,C,D。推出新依賴: (11) ABCD。求ABD+,有ABD+=A,B,D;因?yàn)锽C,所以ABD+=A,B,D,C。推出新依賴:(12) ABDC。求ACD+,有ACD+

31、=A,C,D;因?yàn)锳B,所以ACD+=A,C,D,B.推出新依賴:(13) ACDD求BCD+,有BCD+=DCB。(2)鍵碼為:A;超鍵碼為:AB,AC,AD,ABC,ABD,ABCD。(3)該關(guān)系為第二范式(2NF)。因?yàn)殒I碼為A是單屬性,不存在非主屬性對鍵碼的部分依賴,但存在非主屬性C,D通過B對鍵碼的傳遞依賴(AB,BC,BD)。3、假設(shè)關(guān)系模式為R(A,B,C,D),函數(shù)依賴為ABC,CD和DA。(1)找出所有違背BCNF的函數(shù)依賴。提示:應(yīng)考慮不在給定的依賴集但蘊(yùn)含于其中的依賴。(2)把關(guān)系模式R分解成屬于BCNF的關(guān)系模式的集合。答案:31)參看教材P.122例6.1,共有14個(gè)

32、非平凡函數(shù)依賴(包括已知的和導(dǎo)出的):CA,CD,DAABC,ABD,ACD,BCA,BCD,BDA,BDC,CDAABCD,ABDC,BCDA共有3個(gè)鍵碼:AB,BC,BD其決定因素不包含鍵碼的函數(shù)依賴即為BC范式的違例,如下所示:CA,CD,DA,ACD,CDA2)以違例CD為基礎(chǔ)進(jìn)行分解:R1(C,D)R2(A,B,C) R1屬于BC范式。 R2有函數(shù)依賴CA,ABC,BCA AB+=ABC, BC+=ABC AB,BC均為鍵碼。函數(shù)依賴CA為BC范式違例。于是R2又可分解為:R3(A,C)R4(B,C) 至此,R分解為R1,R3,R4,均屬于BC范式。4、舉出兩個(gè)具有多值依賴的關(guān)系模式

33、。分別將其分解成屬于4NF的關(guān)系模式。答案:從S中各種屬性組合的封閉集入手,分析其中蘊(yùn)含的函數(shù)依賴。 A+=A, B+=B, C+=ACE對于S來說,CA. AB+=ABCDE, AC+=ACE, BC+=ABCDE對于S來說,ABC,BCA S中成立的函數(shù)依賴為CA,ABC,BCA.8、我們所熟悉的產(chǎn)品數(shù)據(jù)庫如下:Product(maker,model,type)PC(model,speed,ram,hd,cd,price)Laptop(model,speed,ram,hd,screen,price)Printer(model,color,type,price)用C+或者其他你熟悉的宿主語言

34、編寫如下的嵌入式SQL查詢:(1)詢問用戶所要求的價(jià)格,找出與要求的價(jià)格最接近(價(jià)格差小于1000元)的PC機(jī)。(2)打印符合要求的PC機(jī)的制造商(maker)、型號(model)、速度(speed)和價(jià)格(price).答案:#define NO-TUPLE ! (strcmp (SQLSTATE,”02000”)void closestMatchPC( ) EXEC SQL BEGIN DECLARE SECTION;char maker1 30, SQLSTATE 6;int targetPrice, model1, speed1, price1;EXEC SQL END DECLARE

35、 SECTION;EXEC SQL DECLARE pcCursor CURSOR FORSELECT model, speed, price FROM PC;EXEC SQL OPEN pcCursor;couttargetPrice;while (1) EXEC SQL FETCH FROM pcCursorINTO :model1, :speed1, :price1;if (NO-TUPLE) break;if (targetPrice-price11000) | (price1-targetPrice1000) EXEC SQL SELECT makerINTO :maker1FROM

36、 ProductWHERE model=:model1;coutmaker1, model1, speed1, price1;EXEC SQL CLOSE CURSOR pcCursor;5.EXEC SQL BEGIN DECLARE SECTION;int model1;EXEC SQL END DECLARE SECTION;Void deleteTuple ( ) coutmodel1;EXEC SQL DELETE FROM ProductWHERE model=:model1;EXEC SQL DELETE FROM PCWHERE model=:model1;EXEC SQL C

37、OMMIT;6. CREATE TABLE Movie(Title CHAR(30),Year INT,Length INTPRIMARY KEY (Title,Year) ); CREATE TABLE Actor(Name CHAR(20) PRIMARY KEY,Address VARCHAR(30),Gender CHAR(1),Birthdate DATE ); CREATE TABLE Acts(MovieTitle CHAR(30),MovieYear INT,ActorName CHAR(20),PRIMARY KEY (MovieTitle,MovieYear,ActorNa

38、me)FOREIGN KEY (MovieTitle,MovieYear)REFERENCES Movie (Title,Year) FOREIGN KEY (ActorName)REFERENCES Actor (Name) );9、對于電影關(guān)系Movie(title,year,length,studioName)中的屬性,寫出下列約束:(1)年份不能在1895年以前。(2)電影長度不能短于60,也不能長于240。答案: (1)CREATE TABLE Movieyear INT CHECK (year=1895),); (2)CREATE TABLE Movielength INT CHE

39、CK (length=60 AND length=1939),); (2)CREATE TABLE Actorbirthyear INTCHECK (name NOT IN (SELECT actorName FROM Acts) OR birthyear (SELECT year(SELECT birthYear FROM actorWHERE name=actorName));數(shù)據(jù)庫系統(tǒng)概論作業(yè)41、有關(guān)產(chǎn)品(Product)類及其三個(gè)子類PC機(jī)(PC)、便攜式電腦(Laptop)、打印機(jī)(Printer)的ODL描述如下:interface Product (extent Product

40、s Key model)attribute integer model;attribute string maker;attribute string type;attribute real price;interface PC:Product (extent PCs)attribute integer speed;attribute integer ram;attribute integer hd;attribute string screen;interface Printer:Product (extent Printer)attribute Boolean color;attribut

41、e string printtype;其中,Product類有三個(gè)屬性:型號model、制造商maker和類型type(PC、便攜式電腦或打印機(jī))。假設(shè)型號對于所有的制造商和產(chǎn)品類型都是唯一。PC機(jī)子類有四個(gè)屬性:速度speed(指處理器的速度,以兆赫計(jì)算)、內(nèi)存容量(以兆字節(jié)計(jì)算)、硬盤hd容量(以千兆字節(jié)計(jì)算)和光盤驅(qū)動器cd速度(以幾倍速計(jì)算)。便攜式電腦Laptop子類與PC機(jī)子類不同之處在于:用屏幕尺寸screen(以英寸計(jì)算)代替光盤驅(qū)動器速度。打印機(jī)Printer子類有2個(gè)屬性:輸出顏色color(彩色為真)和打印機(jī)類型printertype(激光、噴墨等)。把具有如下功能的函數(shù)

42、作為方法署名加到上述ODL中:(1)從產(chǎn)品的價(jià)格中減去x。假設(shè)x是函數(shù)的輸入?yún)?shù)。(2)如果產(chǎn)品是“PC”或者“Laptop”,則返回產(chǎn)品速度,否則就引發(fā)異?!皀ot-computer”。(3)設(shè)置便攜式電腦的屏幕尺寸為特定的輸入值x。解: (1)從產(chǎn)品的價(jià)格中減去x。假設(shè)x是函數(shù)的輸入?yún)?shù)。在Product的最后一行前加上如下內(nèi)容:real downprice(in x out Set) raises(noprice)(2)如果產(chǎn)品是PC或Laptop則返回產(chǎn)品速度,否則引發(fā)異常(not Computer)。integer myspeed( out Set) raises(not Compu

43、ter)(3)設(shè)置便攜式電腦的尺寸為特定的輸入值:在Laptop最后一行加上:screen (in x)2、利用習(xí)題1中的ODL模式,用ODL寫出下列查詢:(1)找出價(jià)格在8000元以下的所有PC機(jī)的型號。(2)找出內(nèi)存至少為64字節(jié)、硬盤至少為10G的所有PC機(jī)型號。(3)找出至少制造兩種不同型號激光打印機(jī)的制造商。答案:(1)SELECT p.modelFROM PCs pWHERE p.price=64 AND p.hd=10;(3)SELECT DISTINCT p1.makerFROM printers p1,printers p2WHERE p1.maker=p2.makerAND p1.printertype=”laser”AND p2.printertype=”laser”AND p1.modelP2.MODEL3、利用題1中的ODL模式,用OQL寫出下列查詢:(1)找出同時(shí)制造PC機(jī)和打

展開閱讀全文
溫馨提示:
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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!