摘要:做真題,是鞏固和掌握知識點最佳的方法,下面希賽軟考學(xué)院為您提供2016年上半年數(shù)據(jù)庫系統(tǒng)工程師考試下午真題,供您參考學(xué)習(xí)。
數(shù)據(jù)庫系統(tǒng)工程師考試的要求為:掌握計算機體系結(jié)構(gòu)以及各主要部件的性能和基本工作原理;掌握操作系統(tǒng)、程序設(shè)計語言的基礎(chǔ)知識,了解編譯程序的基本知識;熟練掌握常用數(shù)據(jù)結(jié)構(gòu)和常用算法;熟悉軟件工程和軟件開發(fā)項目管理的基礎(chǔ)知識;熟悉計算機網(wǎng)絡(luò)的原理和技術(shù);掌握數(shù)據(jù)庫原理及基本理論;掌握常用的大型數(shù)據(jù)庫管理系統(tǒng)的應(yīng)用技術(shù);掌握數(shù)據(jù)庫應(yīng)用系統(tǒng)的設(shè)計方法和開發(fā)過程;熟悉數(shù)據(jù)庫系統(tǒng)的管理和維護方法,了解相關(guān)的安全技術(shù);了解數(shù)據(jù)庫發(fā)展趨勢與新技術(shù)。做真題,是鞏固和掌握知識點最佳的方法,下面希賽軟考網(wǎng)為您提供2016年上半年數(shù)據(jù)庫系統(tǒng)工程師考試下午真題,供您參考學(xué)習(xí)。
點擊進入數(shù)據(jù)庫系統(tǒng)工程師歷年真題在線測試
2016年上半年數(shù)據(jù)庫系統(tǒng)工程師考試下午真題
試題一(共15分)
閱讀下列說明,回答問題1至問題4,將解答填入答題紙的對應(yīng)欄內(nèi)。
【說明】
某會議中心提供舉辦會議的場地設(shè)施和各種設(shè)備,供公司與各類組織機構(gòu)租用。場地包括一個大型報告廳、一個小型報告廳以及諸多會議室。這些報告廳和會議室可提供的設(shè)備有投影儀、白板、視頻播放/回放設(shè)備和計算機等。為了加強管理,該中心欲開發(fā)一會議預(yù)訂系統(tǒng),系統(tǒng)的主要功能如下。
(1)檢查可用性。客戶提交預(yù)訂請求后,檢查預(yù)訂表,判定所申請的場地是否在申請日期內(nèi)可用;如果不可用,返回不可用信息。
(2)臨時預(yù)訂。會議中心管理員收到客戶預(yù)定請求的通知之后,提交確認(rèn)。系統(tǒng)生成新臨時預(yù)訂存入預(yù)訂表,并對新客戶創(chuàng)建一條客戶信息記錄加以保存。根據(jù)客戶記錄給客戶發(fā)送臨時預(yù)訂確認(rèn)信息和支付定金要求。
(3)分配設(shè)施與設(shè)備。根據(jù)臨時預(yù)訂或變更預(yù)定的設(shè)備和設(shè)施需求,分配所需設(shè)備(均能滿足用戶要求)和設(shè)施,更新相應(yīng)的表和預(yù)訂表。
(4)確認(rèn)預(yù)訂。管理員收到客戶支付定金的通知后,檢查確認(rèn),更新預(yù)訂表,根據(jù)客戶記錄給客戶發(fā)送預(yù)訂確認(rèn)信息。
(5)變更預(yù)訂。客戶還可以在支付余款前提交變更預(yù)訂請求,對變更的預(yù)訂請求檢查可用性,如果可用,分配設(shè)施和設(shè)備;如果不可用,返回不可用信息。管理員確認(rèn)變更后,根據(jù)客戶記錄給客戶發(fā)送確認(rèn)信息。
(6)要求付款。管理員從預(yù)訂表中查詢距預(yù)訂的會議時間兩周內(nèi)的預(yù)定,根據(jù)客戶記錄給滿足條件的客戶發(fā)送支付余款要求。
(7)支付余款。管理員收到客戶余款支付的通知后,檢查確認(rèn),更新預(yù)訂表中的已支付余款信息。
現(xiàn)采用結(jié)構(gòu)化方法對會議預(yù)定系統(tǒng)進行分析與設(shè)計,獲得如圖1-1所示的上下文數(shù)據(jù)流圖和圖1-2所示的0層數(shù)據(jù)流圖(不完整)。

圖1-1 上下文數(shù)據(jù)流圖

圖1-2 0層數(shù)據(jù)流圖
【問題1】(2分)
使用說明中的詞語,給出圖1-1中的實體E1~E2的名稱
【問題2】(4分)
使用說明中的詞語,給出圖1-2中的數(shù)據(jù)存儲D1~D4的名稱。
【問題3】(6分)
根據(jù)說明和圖中術(shù)語,補充圖1-2中缺失的數(shù)據(jù)流及其起點和終點。
【問題4】(3分)
如果發(fā)送給客戶的確認(rèn)信息是通過Email系統(tǒng)向客戶信息中的電子郵件地址進行發(fā)送的,那么需要對圖1-1和1-2進行哪些修改?用150字以內(nèi)文字加以說明。
試題二(共15分).
閱讀下列說明,回答問題1至問題3,將解答填入答題紙的對應(yīng)欄內(nèi)。
【說明】
某單位公用車輛后勤服務(wù)部門數(shù)據(jù)庫的部分關(guān)系模式如下:
駕駛員:EMP(Eno,Ename,Age,Sex,telephone),各屬性分別表示駕駛員工號、姓名、年齡、性別和電話號碼;。.
車輛:CAR(Cno,Brand,Capacity),各屬性分別表示汽車車牌號、品牌名和排量;
調(diào)度:SCHEDULE(Sno,Eno,Cno,StartTime,Endtime),各屬性分別表示調(diào)度號、駕駛員工號、汽車車牌號、發(fā)車時間和收車時間。
獎金:BONUS(Eno,Year,Month,Amount),各屬性分別表示駕駛員工號、年、月和當(dāng)月的獎金數(shù)量。
有關(guān)車輛調(diào)度的相關(guān)說明如下:
公車的行駛時間只能在工作時間內(nèi),因此規(guī)定調(diào)度表中每天安排發(fā)車的時間在上午07:00:00至下午18:00:00范圍內(nèi)。
【問題1】(4分)
請將下面創(chuàng)建調(diào)度關(guān)系的SQL語句的空缺部分補充完整,要求指定關(guān)系的主碼、外碼,以及調(diào)度表中每天安排發(fā)車的時間在上午07:00:00至下午18:00:00范圍內(nèi)的約束(由函數(shù)
Time Get_time(DATETIME StartTime)返回出車的時間)。
CREATE TABLE SCHEDULE(
Sno CHAR(10),
Eno CHAR(10)(a),
Cno CHAR(8)(b),
StartTime DATETIME(c),
EndTime DATETIME,
PRIMARY KEY(d));
【問題2】(6分)
(1)創(chuàng)建所有'奧迪'品牌汽車的調(diào)度信息的視圖AudiSCHEDULE,屬性有Eno、Ename、Cno、Brand、StartTime和EndTime,請將下面SQL語句的空缺部分補充完整。
CREATE(e)
AS
SELECT EMP,Eno,Ename,CAR,Cno,Brand,StartTime,EndTime
FROM EMP,CAR,SCHEDULE
WHERE(f)
(2)駕駛員的獎金在收車時間寫入時,由出車時間段自動計算,并用觸發(fā)器來實現(xiàn)獎金的自動維護,函數(shù)float Bonus_value(DATETIME StartTime,DATETIME EndTime)依據(jù)發(fā)車時間和收車時間來計算本次出車的獎金。系統(tǒng)在每月初自動增加一條該員工的當(dāng)月獎金記錄,初始金額為零。請將下面SQL語句的空缺部分補充完整。
CREATE (g) Bonus_TRG AFTER (h) ON SCHEDULE
REFERENCING new row AS nrow
FOR EACH ROW
BEGIN
UPDATE BONUS
SET(i)
WHERE (j) AND Year=Get_Year(nrow.StartTime)
AND Month=Get_Month(nrow.StartTime);
END
【問題3】(5分)
請將下面SQL語句的空缺郜分補充完整。
(1)查詢調(diào)度次數(shù)最多的汽車車牌號及其品牌。
SELECT CAR.Cno,Brand
FROM CAR,SCHEDULE
WHERE CAR.Cno=SCHEDULE.Cno
GROUP BY(k)
HAVING (l) (SELECT COUNT(*)
FROM SCHEDULE
CROUP BY Cno);
(2)查詢所有在調(diào)度表中沒有安排過“大金龍”品牌車輛的駕駛員工員和姓名。
SELECT Eno,Ename
FROM EMP
WHERE Eno(m)(
SELECT Eno
FROM(n)
WHERE(o)
AND brand=‘大金龍');
試題三(共15分)
閱讀下列說明,回答問題1至問題3,將解答填入答題紙的對應(yīng)欄內(nèi)。
【說明】
某銷售公司當(dāng)前的銷售業(yè)務(wù)為商城實體店銷售。現(xiàn)該公司擬開展網(wǎng)絡(luò)銷售業(yè)務(wù),需要開發(fā)一個信息化管理系統(tǒng)。請根據(jù)公司現(xiàn)有業(yè)務(wù)及需求完成該系統(tǒng)的數(shù)據(jù)庫設(shè)計。
【需求描述】
(1)記錄公司所有員工的信息。員工信息包括工號、身份證號、姓名、性別、出生日期和電話,并只登記一部電話。
(2)記錄所有商品的信息。商品信息包括商品名稱、生產(chǎn)廠家、銷售價格和商品介紹。系統(tǒng)內(nèi)部用商品條碼區(qū)別每種商品。一種商品只能放在一個倉庫中。
(3)記錄所有顧客的信息。顧客信息包括顧客姓名、身份證號、登錄名、登錄密碼和電話號碼。一位顧客只能提供一個電話號碼。系統(tǒng)自動生成顧客編號。
(4)顧客登錄系統(tǒng)之后,可以在網(wǎng)上商城購買商品。顧客可將選購的商品置入虛擬的購物車內(nèi),購物車可長期存放顧客選購的所有商品。顧客可在購物車內(nèi)選擇商品、修改商品數(shù)量后生成網(wǎng)購訂單。訂單生成后,由顧客選擇系統(tǒng)提供的備選第三方支付平臺進行電子支付,支付成功后系統(tǒng)需要記錄支付憑證編號,然后由商城根據(jù)訂單進行線下配送。
(5)所有的配送商品均由倉庫統(tǒng)一出庫。為方便顧客,允許每位顧客在系統(tǒng)中提供多組收貨地址、收貨人及聯(lián)系電話。一份訂單所含的多個商品可能由多名分揀員根據(jù)商品的所在倉庫信息從倉庫中進行分揀操作,分揀后的商品交由配送員根據(jù)配送單上的收貨地址進行配送。
(6)新設(shè)計的系統(tǒng)要求記錄實體店的每筆銷售信息,包括營業(yè)員、顧客、所售商品及其數(shù)量。
【概念模型設(shè)計】
根據(jù)需求階段收集的信息,設(shè)計的實體聯(lián)系圖(不完整)如圖3-1所示。

圖3-1實體聯(lián)系圖
【邏輯結(jié)構(gòu)設(shè)計】
根據(jù)概念模型設(shè)計階段完成的實體聯(lián)系圖;得出如下關(guān)系模式:(不完整):
員工(工號,身份證號,姓名,性別,出生日期,電話)
商品(條碼,商品名稱,生產(chǎn)廠家,銷售價格,商品介紹,(a))
顧客(編號,姓名,身份證號,登錄名,登錄密碼,電話)
收貨地點(收貨ID,顧客編號,收貨地址,收貨人,聯(lián)系電話)
購物車(顧客編號,商品條碼,商品數(shù)量)
訂單(訂單ID,顧客編號,商品條碼,商品數(shù)量,(b))
分檢(分揀ID,分揀員工號,(c),分揀時間)
配送(配送ID,分揀ID,配送員工號,收貨ID,配送時間,簽收時間,簽收快照)
銷售(銷售ID,營業(yè)員編號,顧客編號,商品條碼,商品數(shù)量)
【問題1】(4分)
補充圖3-1中的“配送’’聯(lián)系所關(guān)聯(lián)的對象及聯(lián)系類型。
【問題2】(6分)
補充邏輯設(shè)計結(jié)果中的(a)、(b)、(c)三處空缺。
【問題3】(5分)
對于實體店銷售,如要增加送貨上門服務(wù),由營業(yè)員在系統(tǒng)中下訂單,與網(wǎng)購的訂單進行后續(xù)的統(tǒng)一管理。請根據(jù)此需求,對圖3-1進行補充,并修改訂單關(guān)系模式。
試題四(共15分)
閱讀下列說明,回答問題1至問題3,將解答填入答題紙的對應(yīng)欄內(nèi)。
【說明】
某小區(qū)由于建設(shè)時間久遠,停車位數(shù)量無法滿足所有業(yè)主的需要,為公平起見,每年進行一次抽簽來決定車位分配。小區(qū)物業(yè)擬建立一個信息系統(tǒng),對停車位的使用和收費進行管理。
【需求描述】
(1)小區(qū)內(nèi)每套房屋可能有多名業(yè)主,一名業(yè)主也可能在小區(qū)內(nèi)有多套房屋。業(yè)主信息包括業(yè)主姓名、身份證號、房號、房屋面積,其中房號不重復(fù)。
(2)所有車位都有固定的編號,且同一年度所有車位的出租費用相同,但不同年份的出租費用可能不同。
(3)所有車位都參與每年的抽簽分配。每套房屋每年只能有一次抽簽機會。抽中車位的業(yè)主需一次性繳納全年的車位使用費用,且必須指定汽車使用該車位。
(4)小區(qū)車輛出入口設(shè)有車牌識別系統(tǒng),可以實時識別進出的汽車車牌號。為方便門衛(wèi)確認(rèn),系統(tǒng)還需登記汽車的品牌和顏色。
【邏輯結(jié)構(gòu)設(shè)計】
根據(jù)上述需求,設(shè)計出如下關(guān)系模式:
業(yè)主(業(yè)主姓名,業(yè)主身份證號,房號,房屋面積)
車位(車位編號,房號,車牌號,汽車品牌,汽車顏色,使用年份,費用)
【問題1】(6分)
對關(guān)系“業(yè)主”,請回答以下詞題:
(1)給出“業(yè)主”關(guān)系的候選鍵。
(2)它是否為2NF,用60字以內(nèi)文字簡要敘述理由。
(3)將其分解為BCNF,分解后的關(guān)系名依次為:A1,A2,...,并用下劃線標(biāo)示分解后的各關(guān)系模式的主鍵。
【問題2】(6分)
對關(guān)系“車位”,請回答以下問題:
(1)給出“車位’’關(guān)系的候選鍵。.
(2)它是否為3NF,用60字以內(nèi)文字簡要敘述理由。
(3)將其分解為BCNF,分解后的關(guān)系名依次為:B1,B2,...,并用下劃線標(biāo)示分解后的各關(guān)系模式的主鍵。
【問題3】(3分)
若臨時車輛進入小區(qū),按照進入和離開小區(qū)的時間進行收費(每小時2元)。試增加“臨時停車”關(guān)系模式,用100字以內(nèi)文字簡要敘述解決方案。
試題五(共15分)
閱讀下列說明,回答問題1和問題2,將解答填入答題紙的對應(yīng)欄內(nèi)。
【說明】
某圖書館的圖書借還業(yè)務(wù)使用如下關(guān)系模式:
書目(ISBN,書名,出版社,在庫數(shù)量)
圖書(書號,ISBN,當(dāng)前位置)
其中在庫數(shù)量為當(dāng)前書目可借出的圖書的數(shù)量,每本圖書入庫后都會有當(dāng)前位置,借出后當(dāng)前位置字段改為空值。每一條書目信息對應(yīng)多本相同的圖書,每一本圖書只能對應(yīng)一條書目。
借還書業(yè)務(wù)的基本流程如下描述:
(1)讀者根據(jù)書名查詢書目,當(dāng)前書目的在庫數(shù)量大于0時可借閱。
(2)讀者借出一本圖書時,進行出庫操作:根據(jù)該圖書的書號將該圖書的當(dāng)前位置字段值改為空值,并根據(jù)其ISBN號將對應(yīng)書目的在庫數(shù)量減1。
(3)讀者歸還一本圖書時,進行入庫操作:系統(tǒng)根據(jù)當(dāng)前書架的空余位置自動生成該本書的存放位置,并根據(jù)該圖書的書號將其當(dāng)前位置字段值改為生成的存放位置,然后將對應(yīng)書目的在庫數(shù)量加1。
(4)借還書時,逐一掃描每本圖書的書號并進行出、入庫操作。
【問題1】(7分)
引入兩個偽指令:a=R(X)表示將在庫數(shù)量X值讀入到變量a中;W(a,X)表示將變量a的值寫入到在庫數(shù)量X中。入庫操作用下標(biāo)I表示,出庫操作用下標(biāo)O表示。
將出庫和八庫操作分別定義為兩個事務(wù),針對并發(fā)序列:ao=Ro(X),aI=RI(X),ao=ao-1,Wo(ao,X),aI-aI+1,WI(aI,X)。其中變量ai和ao分別代表入庫事務(wù)和出庫事務(wù)中的局部變量。
(1)假設(shè)當(dāng)前X的值為3,則執(zhí)行完上述并發(fā)序列的偽指令后,X的值是多少?簡述產(chǎn)生這一錯誤的原因(100字以內(nèi))。
(2)為了解決上述問題,引入獨占鎖指令XLock(X)對數(shù)據(jù)X進行加鎖,解鎖指令Unlock(X)兩對數(shù)據(jù)X進行解鎖。入庫操作用下標(biāo)I表示,如XLockI(X);出庫操作用下標(biāo)O表示,如Unlocko(X)。請根據(jù)上述的并發(fā)序列,給出一種可能的執(zhí)行序列,使其滿足2PL協(xié)議。
【問題2】(8分)
下面是用SQL實現(xiàn)的出入庫業(yè)務(wù)程序的一部分,請補全空缺處的代碼。
CREATE PROCEDURE IOstack(INBookNo VARCHAR(20),INAmount INT){
//輸入合法性驗證
if not(Amount=1 or Amount=-1) return -1;
//修改圖書表當(dāng)前位置
UPDATE 圖書 SET 當(dāng)前位置=GetPos(BookNo,Amount)//系統(tǒng)生成
WHERE(a);
if error then{ROLLBACK;return -2;}
//修改在庫數(shù)量
UPDATE 書目 SET 在庫數(shù)量=(b)
WHERE EXISTS(
SELECT*
FROM 圖書
WHERE 書號=BookNo AND
(c));
if error then{ROLLBACK;return -3;}
(d);
return0;
}
點擊查看2016年上半年數(shù)據(jù)庫系統(tǒng)工程師考試下午真題答案與解析
相關(guān)推薦:
2016年上半年數(shù)據(jù)庫系統(tǒng)工程師考試上午真題(標(biāo)準(zhǔn)參考答案)
軟考備考資料免費領(lǐng)取
去領(lǐng)取
專注在線職業(yè)教育24年