摘要:2014上半年數據庫系統工程師考試真題及答案解析下午卷 試題四.閱讀下列說明,回答問題1至問題3,將解答填入答題紙的對應欄內。【說明】 某高速路不停車收費系統(ETC)的業務描述如下:
下午卷
試題四.閱讀下列說明,回答問題1至問題3,將解答填入答題紙的對應欄內。
【說明】
某高速路不停車收費系統(ETC)的業務描述如下:
(1)車輛駛入高速路入口站點時,將駛入信息(ETC卡號,入口編號,駛入時間) 寫入登記表;
(2)車輛駛出高速路出口站點(收費口)時,將駛出信息(ETC卡號,出口編號, 駛出時間)寫入登記表;根據入口編號、出口編號及相關收費標準,清算應繳費用, 并從綁定的信用卡中扣除費用。一張ETC卡號只能綁定一張信用卡號,針對企業用戶,一張信用卡號可以綁定多 個ETC卡號。使用表綁定(ETC卡號,信用卡號)來描述綁定關系,從信用卡(信 用卡號,余額)表中扣除費用。 針對上述業務描述,完成下列問題:
【問題1】
在不修改登記表的表結構和保留該表歷史信息的前提下,當車輛駛入時,如何保 證當前ETC卡已經清算過,而在駛出時又如何保證該卡已駛入而未駛出?請用100 字以內文字簡述處理方案。
【問題2】
當車輛駛出收費口時,從綁定信用卡余額中扣除費用的偽指令如下:讀取信用卡 余額到變量X,記為x = R(A);扣除費用指令x = x - a;寫信用卡余額指令記為W(A, x)。 (1)當兩個綁定到同一信用卡號的車輛同時經過收費口時,可能的指令執行序 列為:xl=R(A),xl =xl-al, x2 = R(A), x2 = x2-a2, W(A,xl),W(A,x2)。此時會出現什么問題?(100字以內)
(2)為了解決上述問題,弓丨入獨占鎖指令XLock(A)對數據A進行加鎖,解鎖指 令Unlock(A)對數據A進行解鎖。請補充上述執行序列,使其滿足2PL協議。
【問題3】
下面是用E-SQL實現的費用扣除業務程序的一部分,請補全空缺處的代碼。
CREATE PROCEDURE 扣除(IN ETC 卡號 VARCHAR(20),IN 費用 FLOAT) BEGIN
UPDATE信用卡SET余額=余額一:費用
FROM信用卡,綁定
WHERE信用卡.信用卡號=綁定.信用卡號AND (a)
if error then ROLLBACK;
else (b)
END
參考答案

相關鏈接:
數據庫系統工程師考試知識點分析與真題詳解(第4版)
數據庫系統工程師考試歷年試題分析與解答(第4版)
數據庫系統工程師考試下午知識點精講與考前必練
數據庫系統工程師考試考前串講
軟考備考資料免費領取
去領取
專注在線職業教育24年