《數(shù)據(jù)庫(kù)系統(tǒng)概論模擬試卷四及參考答案.doc》由會(huì)員分享,可在線閱讀,更多相關(guān)《數(shù)據(jù)庫(kù)系統(tǒng)概論模擬試卷四及參考答案.doc(9頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、數(shù)據(jù)庫(kù)系統(tǒng)概論模擬試卷(四)參考答案一、 單項(xiàng)選擇題 (每小題2分,共30分) 第1到第2題基于以下的敘述:有關(guān)系模式A(C,T,H,R,S),其中各屬性的含義是:屬性C代表課程名,屬性T代表教師姓名,屬性H代表上課時(shí)間,屬性R代表上課教室,屬性S代表學(xué)生姓名。根據(jù)語(yǔ)義有如下函數(shù)依賴集:F= CT,(H,R) C,(H,T)R,(H,S)R。1、 請(qǐng)問(wèn)該關(guān)系模式A的候選碼是( )(A)、C (B)、(H,R) (C)、(H,T) (D)、(H,S)2、 關(guān)系模式A的規(guī)范化程度最高達(dá)到( )(A)、 1NF (B)、2NF (C)、3NF (D)、BCNF3、 假設(shè)有關(guān)系R(A,B,C)和關(guān)系S
2、(C,D)。與SQL語(yǔ)句:select A,B,D from R,S where R.C=S.C等價(jià)的關(guān)系代數(shù)表達(dá)式是( ) (A)、R.C=S.C(A,B,D(R XS)(B)、A,B,D (R.C=S.C(R XS)(C)、R.C=S.C(A,B(R) X D(S)(D)、R.C=S.C(D(A,B(R)XS)4、 在數(shù)據(jù)庫(kù)應(yīng)用中,一般一條SQL 語(yǔ)句可產(chǎn)生或處理一組記錄,而宿主語(yǔ)言,如C語(yǔ)言,一條語(yǔ)句一般一次只能處理一條記錄,它們之間的協(xié)調(diào)可通過(guò)哪種技術(shù)實(shí)現(xiàn)( ) (A)、指針 (B)、游標(biāo) (C)、數(shù)組 (D)、棧5、 在SQL語(yǔ)言的SELECT語(yǔ)句中,實(shí)現(xiàn)投影操作是哪個(gè)子句?( )
3、(A)、SELECT (B)、FROM (C)、WHERE (D)、GROUP BY6、 在具有檢查點(diǎn)的故障恢復(fù)技術(shù)中,下面哪個(gè)事務(wù)不需要REDO( )。(A)、 T1 (B)、T2 (C)、T3 (D)、 T4Tc檢查點(diǎn)Tf系統(tǒng)故障T1T2T3T47、 下列哪一個(gè)允許用戶定義新關(guān)系時(shí),引用其他關(guān)系的主碼作為外碼( ) (A)、INSERT (B)、DELETE (C)、REFERENCES (D)、SELECT8、 如果有兩個(gè)事務(wù),同時(shí)對(duì)數(shù)據(jù)庫(kù)中同一個(gè)數(shù)據(jù)進(jìn)行操作,不會(huì)引起沖突的操作是( ) (A)、一個(gè)是DELETE,一個(gè)是SELECT(B)、一個(gè)是UPDATE,一個(gè)是SELECT(C)、
4、兩個(gè)都是UPDATE(D)、兩個(gè)都是SELECT9、 SQL語(yǔ)言中的COMMIT語(yǔ)句的主要作用是( )(A)、結(jié)束程序 (B)、返回系統(tǒng)(C)、提交事務(wù) (D)、存儲(chǔ)數(shù)據(jù)10、 在E-R模型向關(guān)系模型轉(zhuǎn)換時(shí),M:N的聯(lián)系轉(zhuǎn)換為關(guān)系模式時(shí),其候選碼是( ) (A)、M端實(shí)體的候選碼 (B)、N端實(shí)體的候選碼 (C)、M、N端實(shí)體的候選碼組合 (D)、重新選取其他屬性11、 若用如下的SQL語(yǔ)句創(chuàng)建一個(gè)表SC:CREATE TABLE SC( S# char(6) NOT NULL, C# char(3) NOT NULL, SCORE int, NOTE char(20);向表SC插入如下記錄行
5、時(shí),( )可以被插入。(A)、(201009, 111,60, NULL)(B)、(200823,101,NULL, 必修)(C)、(NULL, 103,80, 必修)(D)、(201132, NULL,86, NULL)12、 在數(shù)據(jù)庫(kù)中,數(shù)據(jù)的物理獨(dú)立性是指( )。 (A)、數(shù)據(jù)庫(kù)與數(shù)據(jù)庫(kù)管理系統(tǒng)的相互獨(dú)立 (B)、用戶程序與DBMS的相互獨(dú)立(C)、用戶的應(yīng)用程序與存儲(chǔ)在磁盤上數(shù)據(jù)庫(kù)中的數(shù)據(jù)是相互獨(dú)立的 (D)、 應(yīng)用程序與數(shù)據(jù)庫(kù)中數(shù)據(jù)的邏輯結(jié)構(gòu)相互獨(dú)立13、 下面列出的關(guān)于視圖的條目中,不正確的是( )。(A)、視圖是外模式(B)、視圖是虛表(C)、使用視圖可以加快查詢語(yǔ)句的執(zhí)行速度(
6、D)、使用視圖可以簡(jiǎn)化查詢語(yǔ)句的編寫14、 假如采用關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)來(lái)實(shí)現(xiàn)應(yīng)用,在數(shù)據(jù)庫(kù)設(shè)計(jì)的( )階段,需要將E-R模型轉(zhuǎn)換為關(guān)系數(shù)據(jù)模型。(A)、概念設(shè)計(jì) (B)、邏輯設(shè)計(jì)(C)、物理設(shè)計(jì) (D)、運(yùn)行階段15、 設(shè)有關(guān)系R(書(shū)號(hào),書(shū)名),如果要檢索第3個(gè)字母為M,且至少包含4個(gè)字母的書(shū)名,則SQL查詢語(yǔ)句中WHERE子句的條件表達(dá)式應(yīng)寫成:Where 書(shū)名 LIKE()。 (A)、_ _ M _ (B)、_ _ M%(C)、_ _ M _ % (D)、_%M_ _二、簡(jiǎn)答題(每小題5分,共10分)1、進(jìn)行數(shù)據(jù)庫(kù)系統(tǒng)需求分析時(shí),數(shù)據(jù)字典的內(nèi)容和作用是什么?答:數(shù)據(jù)字典是各類數(shù)據(jù)描述的集合,通
7、常包括數(shù)據(jù)項(xiàng). 數(shù)據(jù)結(jié)構(gòu). 數(shù)據(jù)流. 數(shù)據(jù)存儲(chǔ)和處理過(guò)程5個(gè)部分。數(shù)據(jù)字典有助于數(shù)據(jù)的管理和控制,為設(shè)計(jì)人員和數(shù)據(jù)庫(kù)管理員在數(shù)據(jù)庫(kù)設(shè)計(jì). 實(shí)現(xiàn)和運(yùn)行階段控制有關(guān)數(shù)據(jù)提供依據(jù)。2、什么是事務(wù)?怎樣保證多個(gè)事務(wù)并發(fā)執(zhí)行是正確的?答:事務(wù)是用戶定義的數(shù)據(jù)操作系列,這些操作作為一個(gè)完整的工作單元,一個(gè)事務(wù)內(nèi)的所有語(yǔ)句被作為一個(gè)整體,要么全部執(zhí)行,要么全部不執(zhí)行。多個(gè)事務(wù)的并發(fā)執(zhí)行是正確的,當(dāng)且僅當(dāng)其運(yùn)行結(jié)果與按照某一順序的串行執(zhí)行的結(jié)果相同。兩段鎖協(xié)議是實(shí)現(xiàn)可串行化調(diào)度的充分條件。三、綜合應(yīng)用題(60分)1、(21分)已知一個(gè)公司的職工-社團(tuán)數(shù)據(jù)庫(kù)有三個(gè)基礎(chǔ)表: 職工:E(Eno,Ename,Age,
8、Sex) ,屬性依次是: 職工號(hào),職工名,年齡,性別。 社團(tuán):C(Cno,Cname,Manager,Address),屬性依次是: 社團(tuán)號(hào),社團(tuán)名,負(fù)責(zé)人職工號(hào),社團(tuán)地址 參加:EC(Eno,Cno,Date),屬性依次是: 職工號(hào),社團(tuán)號(hào),參加社團(tuán)的日期 用關(guān)系代數(shù)表示下列查詢: (1)查找張力所參加社團(tuán)的社團(tuán)名和參加日期。Cname,Date(Eno(Ename=張力(E) ) ECC) (2) 查找參加了全部社團(tuán)的職工號(hào)和職工名。Eno,Ename(E) (Eno,Cno(EC) Cno(C)(3)查找每個(gè)社團(tuán)的社團(tuán)名,負(fù)責(zé)人姓名,負(fù)責(zé)人性別。 Cname,Ename,Sex (Eno
9、=Manager (EC) )用SQL語(yǔ)句表示下列查詢:(4) 查找年齡大于職工平均年齡的職工號(hào),職工名和年齡。 SELECT Eno,Ename,Age FROM E WHERE Age(SELECT AVG(Age) FROM E)(5) 查找參加人數(shù)最多的社團(tuán)號(hào)和參加人數(shù)。 SELECT Cno,COUNT(*) AS 人數(shù) FROM EC GROUP BY Cno HAVING COUNT(*)=ALL (SELECT COUNT(*) FROM EC GROUP BY Cno)(6) 查找沒(méi)有參加任何社團(tuán)的職工情況。 SELECT * FROM E WHERE Eno NOT IN
10、(SELECT Eno FROM EC )(7) 查找全體職工都參加的社團(tuán)號(hào)和社團(tuán)名。 SELECT Cno,Cname FROM C WHERE NOT EXISTS (SELECT * FROM E WHERE NOT EXISTS (SELECT * FROM EC WHERE C.Cno=EC.Cno AND E.Eno=EC.Eno) 2、(4分)設(shè)關(guān)系R、S、W如圖所示:計(jì)算關(guān)系代數(shù)表達(dá)式:T=(RS) B,E,D(W) 的結(jié)果。答:3、(6分)假設(shè)有下面兩個(gè)關(guān)系模式: 職工(職工號(hào),姓名,年齡,職務(wù),工資,部門號(hào)),其中職工號(hào)為主碼;部門號(hào)為外碼。 部門(部門號(hào),名稱,經(jīng)理名,電
11、話),其中部門號(hào)為主碼,經(jīng)理名為外碼請(qǐng)用SQL語(yǔ)言定義這兩個(gè)關(guān)系模式,要求在關(guān)系模式中完成以下完整性約束條件的定義:(1)定義每個(gè)模式的主碼;(2)定義參照完整性;職工關(guān)系模式中的部門號(hào)屬性參照部門關(guān)系模式中的主碼部門號(hào);部門關(guān)系模式中的經(jīng)理名屬性參照職工關(guān)系模式中的姓名屬性。(3)定義職工年齡不超過(guò)60歲。答:CREATE TABLE職工(職工號(hào) CHAR(5)PRIMARY KEY, 姓名CHAR(8)NOT NULL, 年齡SMALLINT, 職務(wù)CHAR(10), 工資DECIMAL(7,2), 部門號(hào)CHAR(5), CONSTRAINT CI CHECK(年齡 60), CONST
12、RAIN C2 FOREIGN KEY(部門號(hào)) REFEENCES部門(部門號(hào)); CREAT TABLE部門(部門號(hào)CHAR(5)PRIMARY KEY, 名稱CHAR(20), 經(jīng)理名 CHAR(8), 電話 CHAR(8), CONSTRAINT C3 FOREIGN KEY(經(jīng)理名) REFERECES職工(姓名);4、 (10分)有一個(gè)應(yīng)用系統(tǒng)的數(shù)據(jù)庫(kù)包括三個(gè)實(shí)體集。 一個(gè)是“商店”實(shí)體集,其屬性有:商店編號(hào),店名,店址,店經(jīng)理。 一個(gè)是“會(huì)員”實(shí)體集,其屬性有:會(huì)員編號(hào),會(huì)員名,地址。 一個(gè)是“職工”實(shí)體集,其屬性有:職工編號(hào),職工名,性別,工資。 每家商店有若干職工,但每個(gè)職工
13、只能服務(wù)于一家商店。 每家商店有若干會(huì)員,每個(gè)會(huì)員可以屬于多家商店。在商店和職工的聯(lián)系中應(yīng)反映出職工參加某商店工作的開(kāi)始時(shí)間,在商店和會(huì)員的聯(lián)系中應(yīng)反映出會(huì)員的加入時(shí)間。(1) 根據(jù)上述語(yǔ)義畫(huà)出E-R圖,在E-R圖中需注明實(shí)體型的屬性、聯(lián)系的類型。(2) 將E-R圖轉(zhuǎn)換成關(guān)系模式,要求每個(gè)關(guān)系模式要規(guī)范到第三范式,并指出每個(gè)關(guān)系模式的主鍵和外鍵。答:(1) (2) 商店模式(商店編號(hào),店名,店址,店經(jīng)理) 主鍵:商店編號(hào)職工模式(職工編號(hào),職工名,性別,工資,商店編號(hào),參加工作時(shí)間) 主鍵:職工編號(hào) 外鍵:商店編號(hào) 會(huì)員模式(會(huì)員編號(hào),會(huì)員名,地址) 主鍵:會(huì)員編號(hào) SM模式(會(huì)員編號(hào),商店編
14、號(hào),會(huì)員加入時(shí)間) 主鍵:(會(huì)員編號(hào),商店編號(hào)) 外鍵:會(huì)員編號(hào);外鍵:商店編號(hào)5、(10分)設(shè)有三個(gè)事務(wù)T1、T2、T3,所包含的操作為:T1:A=A+2;T2:A=A*2;T3:A=A*A; 設(shè)A的初始值為1,請(qǐng)回答下列問(wèn)題: (1)假定這三個(gè)事務(wù)允許并發(fā)執(zhí)行,則有多少種可能的正確結(jié)果,請(qǐng)一一列出。 (2)若這三個(gè)事務(wù)都遵守兩段鎖協(xié)議,給出一個(gè)不產(chǎn)生死鎖的可串行化調(diào)度。答:(1) 總共有6種可能的正確結(jié)果: T1T2T3:36;T1T3T2:18;T2T1T3:16; T2T3T1:6;T3T1T2:6;T3T2T1:4(2)T1T2T3Xlock(A)Xlock(A)Xlock(A)Re
15、ad(A=1)等待等待A=A+2等待等待Wrtie(A=3)等待等待COMMIT等待等待Unlock(A)等待等待Read(A=3)等待A=A*2等待Write(A=6)等待COMMIT等待Unlock(A)等待Read(A=6)A=A*AWrite(A=36)COMMITUnlock(A)6、 (9分)請(qǐng)回答以下問(wèn)題: (1)、在關(guān)系數(shù)據(jù)理論中,1NF、2NF、3NF分別對(duì)關(guān)系模式有何要求? (2)、若已知關(guān)系模式SL(SNO,SDEPT,SLOC),其中SNO為主碼,函數(shù)依賴有:SNOSDEPT,SDEPTSLOC,請(qǐng)判斷SL是否滿足3NF?為什么?(1)1NF要求關(guān)系模式中的每個(gè)屬性都是不可再分; 2NF要求關(guān)系模式中的每個(gè)非主屬性完全函數(shù)依賴于碼; 3NF要求關(guān)系模式中的每個(gè)非主屬性既不部分依賴于碼也不傳遞依賴于碼。(2)SL不滿足3NF,它屬于2NF。因?yàn)镾NOSDEPT,SDEPTSLOC,而SDEPTSNO,所以SLOC傳遞函數(shù)依賴于SNO。1-5:DBBBA 6-10:ACDCC 11-15:ACCBC第 8 頁(yè) 共 9 頁(yè)