摘要:做真題,是鞏固和掌握知識點最佳的方法,下面希賽軟考學院為您提供2016年上半年數據庫系統(tǒng)工程師考試下午真題,供您參考學習。
數據庫系統(tǒng)工程師考試的要求為:掌握計算機體系結構以及各主要部件的性能和基本工作原理;掌握操作系統(tǒng)、程序設計語言的基礎知識,了解編譯程序的基本知識;熟練掌握常用數據結構和常用算法;熟悉軟件工程和軟件開發(fā)項目管理的基礎知識;熟悉計算機網絡的原理和技術;掌握數據庫原理及基本理論;掌握常用的大型數據庫管理系統(tǒng)的應用技術;掌握數據庫應用系統(tǒng)的設計方法和開發(fā)過程;熟悉數據庫系統(tǒng)的管理和維護方法,了解相關的安全技術;了解數據庫發(fā)展趨勢與新技術。做真題,是鞏固和掌握知識點最佳的方法,下面希賽軟考網為您提供2016年上半年數據庫系統(tǒng)工程師考試下午真題,供您參考學習。
2016年上半年數據庫系統(tǒng)工程師考試下午真題
試題一(共15分)
閱讀下列說明,回答問題1至問題4,將解答填入答題紙的對應欄內。
【說明】
某會議中心提供舉辦會議的場地設施和各種設備,供公司與各類組織機構租用。場地包括一個大型報告廳、一個小型報告廳以及諸多會議室。這些報告廳和會議室可提供的設備有投影儀、白板、視頻播放/回放設備和計算機等。為了加強管理,該中心欲開發(fā)一會議預訂系統(tǒng),系統(tǒng)的主要功能如下。
(1)檢查可用性??蛻籼峤活A訂請求后,檢查預訂表,判定所申請的場地是否在申請日期內可用;如果不可用,返回不可用信息。
(2)臨時預訂。會議中心管理員收到客戶預定請求的通知之后,提交確認。系統(tǒng)生成新臨時預訂存入預訂表,并對新客戶創(chuàng)建一條客戶信息記錄加以保存。根據客戶記錄給客戶發(fā)送臨時預訂確認信息和支付定金要求。
(3)分配設施與設備。根據臨時預訂或變更預定的設備和設施需求,分配所需設備(均能滿足用戶要求)和設施,更新相應的表和預訂表。
(4)確認預訂。管理員收到客戶支付定金的通知后,檢查確認,更新預訂表,根據客戶記錄給客戶發(fā)送預訂確認信息。
(5)變更預訂。客戶還可以在支付余款前提交變更預訂請求,對變更的預訂請求檢查可用性,如果可用,分配設施和設備;如果不可用,返回不可用信息。管理員確認變更后,根據客戶記錄給客戶發(fā)送確認信息。
(6)要求付款。管理員從預訂表中查詢距預訂的會議時間兩周內的預定,根據客戶記錄給滿足條件的客戶發(fā)送支付余款要求。
(7)支付余款。管理員收到客戶余款支付的通知后,檢查確認,更新預訂表中的已支付余款信息。
現采用結構化方法對會議預定系統(tǒng)進行分析與設計,獲得如圖1-1所示的上下文數據流圖和圖1-2所示的0層數據流圖(不完整)。
圖1-1 上下文數據流圖
圖1-2 0層數據流圖
【問題1】(2分)
使用說明中的詞語,給出圖1-1中的實體E1~E2的名稱
【問題2】(4分)
使用說明中的詞語,給出圖1-2中的數據存儲D1~D4的名稱。
【問題3】(6分)
根據說明和圖中術語,補充圖1-2中缺失的數據流及其起點和終點。
【問題4】(3分)
如果發(fā)送給客戶的確認信息是通過Email系統(tǒng)向客戶信息中的電子郵件地址進行發(fā)送的,那么需要對圖1-1和1-2進行哪些修改?用150字以內文字加以說明。
試題二(共15分).
閱讀下列說明,回答問題1至問題3,將解答填入答題紙的對應欄內。
【說明】
某單位公用車輛后勤服務部門數據庫的部分關系模式如下:
駕駛員:EMP(Eno,Ename,Age,Sex,telephone),各屬性分別表示駕駛員工號、姓名、年齡、性別和電話號碼;。.
車輛:CAR(Cno,Brand,Capacity),各屬性分別表示汽車車牌號、品牌名和排量;
調度:SCHEDULE(Sno,Eno,Cno,StartTime,Endtime),各屬性分別表示調度號、駕駛員工號、汽車車牌號、發(fā)車時間和收車時間。
獎金:BONUS(Eno,Year,Month,Amount),各屬性分別表示駕駛員工號、年、月和當月的獎金數量。
有關車輛調度的相關說明如下:
公車的行駛時間只能在工作時間內,因此規(guī)定調度表中每天安排發(fā)車的時間在上午07:00:00至下午18:00:00范圍內。
【問題1】(4分)
請將下面創(chuàng)建調度關系的SQL語句的空缺部分補充完整,要求指定關系的主碼、外碼,以及調度表中每天安排發(fā)車的時間在上午07:00:00至下午18:00:00范圍內的約束(由函數
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)建所有'奧迪'品牌汽車的調度信息的視圖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ā)器來實現獎金的自動維護,函數float Bonus_value(DATETIME StartTime,DATETIME EndTime)依據發(fā)車時間和收車時間來計算本次出車的獎金。系統(tǒ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)查詢調度次數最多的汽車車牌號及其品牌。
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)查詢所有在調度表中沒有安排過“大金龍”品牌車輛的駕駛員工員和姓名。
SELECT Eno,Ename
FROM EMP
WHERE Eno(m)(
SELECT Eno
FROM(n)
WHERE(o)
AND brand=‘大金龍');
試題三(共15分)
閱讀下列說明,回答問題1至問題3,將解答填入答題紙的對應欄內。
【說明】
某銷售公司當前的銷售業(yè)務為商城實體店銷售?,F該公司擬開展網絡銷售業(yè)務,需要開發(fā)一個信息化管理系統(tǒng)。請根據公司現有業(yè)務及需求完成該系統(tǒng)的數據庫設計。
【需求描述】
(1)記錄公司所有員工的信息。員工信息包括工號、身份證號、姓名、性別、出生日期和電話,并只登記一部電話。
(2)記錄所有商品的信息。商品信息包括商品名稱、生產廠家、銷售價格和商品介紹。系統(tǒng)內部用商品條碼區(qū)別每種商品。一種商品只能放在一個倉庫中。
(3)記錄所有顧客的信息。顧客信息包括顧客姓名、身份證號、登錄名、登錄密碼和電話號碼。一位顧客只能提供一個電話號碼。系統(tǒng)自動生成顧客編號。
(4)顧客登錄系統(tǒng)之后,可以在網上商城購買商品。顧客可將選購的商品置入虛擬的購物車內,購物車可長期存放顧客選購的所有商品。顧客可在購物車內選擇商品、修改商品數量后生成網購訂單。訂單生成后,由顧客選擇系統(tǒng)提供的備選第三方支付平臺進行電子支付,支付成功后系統(tǒng)需要記錄支付憑證編號,然后由商城根據訂單進行線下配送。
(5)所有的配送商品均由倉庫統(tǒng)一出庫。為方便顧客,允許每位顧客在系統(tǒng)中提供多組收貨地址、收貨人及聯系電話。一份訂單所含的多個商品可能由多名分揀員根據商品的所在倉庫信息從倉庫中進行分揀操作,分揀后的商品交由配送員根據配送單上的收貨地址進行配送。
(6)新設計的系統(tǒng)要求記錄實體店的每筆銷售信息,包括營業(yè)員、顧客、所售商品及其數量。
【概念模型設計】
根據需求階段收集的信息,設計的實體聯系圖(不完整)如圖3-1所示。
圖3-1實體聯系圖
【邏輯結構設計】
根據概念模型設計階段完成的實體聯系圖;得出如下關系模式:(不完整):
員工(工號,身份證號,姓名,性別,出生日期,電話)
商品(條碼,商品名稱,生產廠家,銷售價格,商品介紹,(a))
顧客(編號,姓名,身份證號,登錄名,登錄密碼,電話)
收貨地點(收貨ID,顧客編號,收貨地址,收貨人,聯系電話)
購物車(顧客編號,商品條碼,商品數量)
訂單(訂單ID,顧客編號,商品條碼,商品數量,(b))
分檢(分揀ID,分揀員工號,(c),分揀時間)
配送(配送ID,分揀ID,配送員工號,收貨ID,配送時間,簽收時間,簽收快照)
銷售(銷售ID,營業(yè)員編號,顧客編號,商品條碼,商品數量)
【問題1】(4分)
補充圖3-1中的“配送’’聯系所關聯的對象及聯系類型。
【問題2】(6分)
補充邏輯設計結果中的(a)、(b)、(c)三處空缺。
【問題3】(5分)
對于實體店銷售,如要增加送貨上門服務,由營業(yè)員在系統(tǒng)中下訂單,與網購的訂單進行后續(xù)的統(tǒng)一管理。請根據此需求,對圖3-1進行補充,并修改訂單關系模式。
試題四(共15分)
閱讀下列說明,回答問題1至問題3,將解答填入答題紙的對應欄內。
【說明】
某小區(qū)由于建設時間久遠,停車位數量無法滿足所有業(yè)主的需要,為公平起見,每年進行一次抽簽來決定車位分配。小區(qū)物業(yè)擬建立一個信息系統(tǒng),對停車位的使用和收費進行管理。
【需求描述】
(1)小區(qū)內每套房屋可能有多名業(yè)主,一名業(yè)主也可能在小區(qū)內有多套房屋。業(yè)主信息包括業(yè)主姓名、身份證號、房號、房屋面積,其中房號不重復。
(2)所有車位都有固定的編號,且同一年度所有車位的出租費用相同,但不同年份的出租費用可能不同。
(3)所有車位都參與每年的抽簽分配。每套房屋每年只能有一次抽簽機會。抽中車位的業(yè)主需一次性繳納全年的車位使用費用,且必須指定汽車使用該車位。
(4)小區(qū)車輛出入口設有車牌識別系統(tǒng),可以實時識別進出的汽車車牌號。為方便門衛(wèi)確認,系統(tǒng)還需登記汽車的品牌和顏色。
【邏輯結構設計】
根據上述需求,設計出如下關系模式:
業(yè)主(業(yè)主姓名,業(yè)主身份證號,房號,房屋面積)
車位(車位編號,房號,車牌號,汽車品牌,汽車顏色,使用年份,費用)
【問題1】(6分)
對關系“業(yè)主”,請回答以下詞題:
(1)給出“業(yè)主”關系的候選鍵。
(2)它是否為2NF,用60字以內文字簡要敘述理由。
(3)將其分解為BCNF,分解后的關系名依次為:A1,A2,...,并用下劃線標示分解后的各關系模式的主鍵。
【問題2】(6分)
對關系“車位”,請回答以下問題:
(1)給出“車位’’關系的候選鍵。.
(2)它是否為3NF,用60字以內文字簡要敘述理由。
(3)將其分解為BCNF,分解后的關系名依次為:B1,B2,...,并用下劃線標示分解后的各關系模式的主鍵。
【問題3】(3分)
若臨時車輛進入小區(qū),按照進入和離開小區(qū)的時間進行收費(每小時2元)。試增加“臨時停車”關系模式,用100字以內文字簡要敘述解決方案。
試題五(共15分)
閱讀下列說明,回答問題1和問題2,將解答填入答題紙的對應欄內。
【說明】
某圖書館的圖書借還業(yè)務使用如下關系模式:
書目(ISBN,書名,出版社,在庫數量)
圖書(書號,ISBN,當前位置)
其中在庫數量為當前書目可借出的圖書的數量,每本圖書入庫后都會有當前位置,借出后當前位置字段改為空值。每一條書目信息對應多本相同的圖書,每一本圖書只能對應一條書目。
借還書業(yè)務的基本流程如下描述:
(1)讀者根據書名查詢書目,當前書目的在庫數量大于0時可借閱。
(2)讀者借出一本圖書時,進行出庫操作:根據該圖書的書號將該圖書的當前位置字段值改為空值,并根據其ISBN號將對應書目的在庫數量減1。
(3)讀者歸還一本圖書時,進行入庫操作:系統(tǒng)根據當前書架的空余位置自動生成該本書的存放位置,并根據該圖書的書號將其當前位置字段值改為生成的存放位置,然后將對應書目的在庫數量加1。
(4)借還書時,逐一掃描每本圖書的書號并進行出、入庫操作。
【問題1】(7分)
引入兩個偽指令:a=R(X)表示將在庫數量X值讀入到變量a中;W(a,X)表示將變量a的值寫入到在庫數量X中。入庫操作用下標I表示,出庫操作用下標O表示。
將出庫和八庫操作分別定義為兩個事務,針對并發(fā)序列:ao=Ro(X),aI=RI(X),ao=ao-1,Wo(ao,X),aI-aI+1,WI(aI,X)。其中變量ai和ao分別代表入庫事務和出庫事務中的局部變量。
(1)假設當前X的值為3,則執(zhí)行完上述并發(fā)序列的偽指令后,X的值是多少?簡述產生這一錯誤的原因(100字以內)。
(2)為了解決上述問題,引入獨占鎖指令XLock(X)對數據X進行加鎖,解鎖指令Unlock(X)兩對數據X進行解鎖。入庫操作用下標I表示,如XLockI(X);出庫操作用下標O表示,如Unlocko(X)。請根據上述的并發(fā)序列,給出一種可能的執(zhí)行序列,使其滿足2PL協議。
【問題2】(8分)
下面是用SQL實現的出入庫業(yè)務程序的一部分,請補全空缺處的代碼。
CREATE PROCEDURE IOstack(INBookNo VARCHAR(20),INAmount INT){
//輸入合法性驗證
if not(Amount=1 or Amount=-1) return -1;
//修改圖書表當前位置
UPDATE 圖書 SET 當前位置=GetPos(BookNo,Amount)//系統(tǒng)生成
WHERE(a);
if error then{ROLLBACK;return -2;}
//修改在庫數量
UPDATE 書目 SET 在庫數量=(b)
WHERE EXISTS(
SELECT*
FROM 圖書
WHERE 書號=BookNo AND
(c));
if error then{ROLLBACK;return -3;}
(d);
return0;
}
點擊查看2016年上半年數據庫系統(tǒng)工程師考試下午真題答案與解析
相關推薦:
2016年上半年數據庫系統(tǒng)工程師考試上午真題(標準參考答案)
軟考備考資料免費領取
去領取