點(diǎn)擊查看:2018全國計算機四級數據庫工程師過(guò)關(guān)試題及答案匯總
1 .數據庫與文件系統的根本區別在于[ ] (單選題)
A.提高了系統效率
B.方便了用戶(hù)使用
C.數據的結構化
D.節省了存儲空間
答案:C
2 .對由SELECT--FROM—WHERE—GROUP--ORDER組成的SQL語(yǔ)句,其在被DBMS處理時(shí),各子句的執行次序為[ ]。 (單選題)
A.SELECT—FROM—GROUP—WHERE—ORDER
B.FROM——SELECT--WHERE——GROUP——ORDER
C.FROM——WHERE——GROUP——SELECT——ORDER
D.SELECT——FROM——WHERE——GROUP——ORDER
答案:C
3 .現有關(guān)系模式: EMP(empno,ename,mgr,sal,workday) DEPT(deptno,dname,loc) 在以下視圖中,不可能更新的視圖為[]。 (多選題)
A.視圖V1,由1970年以后參加工作的雇員組成
B.視圖V2,由部門(mén)號和各部門(mén)的平均工資組成
C.視圖V3,由雇員姓名和其領(lǐng)導者姓名組成
D.視圖V4,由薪金超出所有雇員平均薪金以上的雇員組成
答案:B D
4 .試給出BCNF的定義,并說(shuō)明滿(mǎn)足BCNF的關(guān)系有哪些特性。 (設計題)
答案:
關(guān)系模式R∈1NF。若X→Y且YX時(shí)X必含有碼,則R∈BCNF。滿(mǎn)足BCNF關(guān)系的特性有:所有非主屬性對每一個(gè)碼都是完全函數依賴(lài);所有的主屬性對每一個(gè)不包含它的碼,也是完全函數依賴(lài);沒(méi)有任何屬性完全函數依賴(lài)于非碼的任何一組屬性。
5 .在建立一個(gè)數據庫應用系統時(shí),為什么要首先調試運行DBMS的恢復功能?簡(jiǎn)述一下你所了解的數據庫系統的恢復方法。 (設計題)
答案:
因為計算機系統中硬件的故障、軟件的錯誤、操作員的失誤以及惡意的破壞是不可避免的,這些故障輕則造成運行事務(wù)非正常中斷,影響數據庫中數據的正確性,重則破壞數據庫,使數據庫中全部或部分數據丟失,為了防止出現此類(lèi)事件帶來(lái)的災難性后果,必須首先調試運行DBMS的恢復功能。即把數據庫從錯誤狀態(tài)恢復到某一已知的正確狀態(tài)(亦稱(chēng)為一致?tīng)顟B(tài)或完整狀態(tài))的功能。 DBMS一般都使用數據轉儲和登錄日志文件實(shí)現數據庫系統恢復功能。針對不同的故障,使用不同的恢復策略和方法。例如,對于事務(wù)故障的恢復是由DBMS自動(dòng)完成的,對用戶(hù)是透明的。對于系統故障,也是由DBMS完成恢復操作,包括撤銷(xiāo)(UNDO)故障發(fā)生時(shí)未完成的事務(wù),重做(REDO)已完成的事務(wù)。DBA的任務(wù)是重新啟動(dòng)系統,系統啟動(dòng)后恢復操作就由DBMS來(lái)完成了。對于介質(zhì)故障,則恢復方法是由DBA重裝最新的數據庫后備副本和轉儲結束時(shí)刻的日志文件副本,然后DBA啟動(dòng)系統恢復命令,由DBMS完成恢復功能,即重做已完成的事務(wù)。
6 .試述關(guān)系數據庫系統中視圖(VIEW)的定義,引進(jìn)VIEW的概念有什么優(yōu)點(diǎn)。 (設計題)
答案:
視圖是從一個(gè)或幾個(gè)基本表導出的表。視圖本身不獨立存儲在數據庫中,是一個(gè)虛表。即數據庫中只存放視圖的定義而不存放視圖對應的數據,這些數據仍存放在導出視圖的基本表中。視圖在概念上與基本表等同,用戶(hù)可以如同基本表那樣使用視圖,可以在視圖上再定義視圖。引進(jìn)VIEW的優(yōu)點(diǎn)有: (1)視圖能夠簡(jiǎn)化用戶(hù)的操作。 (2)視圖使用戶(hù)能以多種角度看待同一數據。 (3)視圖對重構數據庫提供了一定程度的邏輯獨立性。 (4)視圖能夠對機密數據提供安全保護。
7 .試述數據模型中完整性約束條件的概念,并給出關(guān)系模型中的完整性約束。 (設計題)
答案:
數據模型應該反映和規定本數據模型必須遵守的基本的通用的完整性約束條件。數據模型還應該提供定義完整性約束條件的機制,以反映具體應月所涉及的數據必須遵守的特定的語(yǔ)義約束條件。在關(guān)系模型中,任何關(guān)系必須滿(mǎn)足實(shí)體完整性和參照完整性?xún)蓚(gè)條件。這是關(guān)系數據模型必須遵守基本的通用的完整性約束條件。
8 .設有學(xué)生表S(SNO,SN)(SNO為學(xué)生號,SN為姓名)和學(xué)生選修課程表SC(SNO,CNO,CN,C)(CNO為課程號,CN為課程名,C為成績(jì)),試用SQL語(yǔ)言完成以下各題 (1)建立一個(gè)視圖V—SSC(SNO,SN,CNO,CN,C),并按CNO升序排序; (2)從視圖V—SSC上查詢(xún)平均成績(jì)在90分以上的SN、CN和C。 (計算題)
答案:
(1) CREATEVIEWV—SSC(SNO,SN,CNO,CN,G) AS SELECT S.SNO,S.SN,CNO,SC.CN,SC.G FROM S,SC WHERE S.SNO:SC.SNO ORDER BY CNO; (2) SELECT SN,CN,C FROM V—SSC GROUP BY SNO HAVINGAVG?>90;
9 .今有如下關(guān)系數據庫: S(SNO,SN,STATUS,CITY) P(PNO,PN,COLOR,WEIGHT) (JNO,JN,CITY) SPJ(SNO,PNO,JNO,QTY) 其中,S為供應單位,P為零件,J為工程項目,SPJ為工程訂購零件的訂單,其語(yǔ)義為:某供應單位供應某種零件給某個(gè)工程,請用SQL完成下列操作。 (1)求為工程J1提供紅色零件的供應商代號。 (2)求使用S1供應的零件的工程名稱(chēng)。 (3)求供應商與工程所在城市相同的供應商提供的零件代號。 (4)求至少有一個(gè)和工程不在同一城市的供應商提供零件的工程代號。 (計算題)
答案:
(1) SELECT DISnNCT SPJ.SNO FROM SPJ,P WHERE P.PNO二SPJ.PNO AND SPJ.JNO=‘J1’AND P.COLOR=‘紅’; (2) SELECTJ.JN FROM J,SPJ WHERE J.JNO=SPJ.JNOAND SPJ.SNO=‘S1’; (3) SELECT DISTINCT SPJ.PNO FROM S,J,SPJ WHERE S.SNO=SPJ.SNO AND).JNO=SPJ.JNO AND S.CITY=J.CITY; (4) SELECT DISTINCT SPJ.JNO FROM S,J,SPJ WHERE S.SNO=SPJ.SNO AND J.JNO=SPJ.JNO AND S.CITY<>J.CITY;
10 .假設存款余額x:1000元,甲事務(wù)取走存款300元,乙事務(wù)取走存款200元,其執行時(shí)間如下:甲事務(wù) 時(shí)間 乙事務(wù)讀x t1 t2 讀x 更新x二x—300 t3 14 更新x:x—200 如何實(shí)現這兩個(gè)事務(wù)的并發(fā)控制? (計算題)
答案:
如果按照題中的順序執行甲乙兩個(gè)事務(wù),則最后的x為800,而不是正確的500。為此,采用封鎖的方法,將甲事務(wù)修改為: WHILE(x上已有排他鎖) {等待 } 對x加上排他鎖讀x 更新x=x-300 釋放排他鎖將乙事務(wù)修改為: { 等待 } 對x加上排他鎖讀x 更新x=x-200 釋放排他鎖可以說(shuō)明如下:甲事務(wù) 時(shí)間 乙事務(wù) XLOCK x t1 獲得 t2 XLOCK x 等待更新x=x-300 t3 等待 x=700 Commit t4 等待 UNLOCKx t5 等待 t6 獲得XLOCK x t7 更新x=x-200 x=500 t8 Commit t9 UNLOCK x
微信搜索"考試吧"了解更多考試資訊、下載備考資料
相關(guān)推薦:
2018年全國計算機等級考試復習知識點(diǎn)匯總(各科目)
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內蒙古 |