摘要:2011上半年數據庫系統工程師考試真題及答案解析下午卷 試題四 閱讀下列說明,回答問題1至問題3,將解答填入對應欄內。
下午卷
試題四
閱讀下列說明,回答問題1至問題3,將解答填入對應欄內。
[說明]
某學校擬開發一套校友捐贈管理系統,以便對校友的捐贈資金進行管理。
[需求分析]
校友可以向學校提出捐贈申請,說明捐贈的金額、捐贈類型和使用方式。捐贈類型包括一次性捐贈和周期性捐贈。捐贈的使用方式分為兩種:一種用于資助個人,即受益人為多名學生或老師,主要用于獎學金、獎教金和助學金等;另一種用于資助捐贈項目,即資助已有的捐贈項目和設立新的捐贈項目,主要用于改善教學設施、實驗室建設和設備購買等。捐贈項目由捐贈理事建立,一個捐贈項目可以涉及多個受益單位,每個單位在該項目中有確定的受益比例。由捐贈理事為項目中的每個單位指定一個項目負責人,并指定每個單位受益比例。每個單位的受益比例是指在一個捐贈項目中的每個單位所應得的金額占該捐贈項目總受益金額的比例。一個捐贈項目可以由多個捐贈來資助,一個捐贈也可以資助多個捐贈項目。由捐贈理事將一個捐贈的捐贈金額分配給所資助的多個捐贈項目,并指定給每個捐贈項目的具體的捐贈金額。
初步設計了校友捐贈信息數據庫,其關系模式如圖4-1所示。


23、對關系“校友信息”,請回答以下問題:
(1)列舉出所有候選鍵的屬性。
(2)關系“校友信息”可達到第幾范式,用60字以內文字簡要敘述理由。
24、對關系“捐贈信息”,請回答以下問題:
(1)針對“捐贈信息”關系,用100字以內文字簡要說明會產生什么問題。
(2)把“捐贈信息”分解為第三范式,分解后的關系名依次為:捐贈信息1,捐贈信息2,……
(3)列出“捐贈信息”關系修正后的各關系模式的主鍵。
25、對關系“項目受益情況”,請回答以下問題:
(1)關系“項目受益情況”是不是第四范式,用100字以內文字敘述理由。
(2)把“項目受益情況”分解為第四范式,分解后的關系名依次為:項目受益情況1,項目受益情況2,……
參考答案及解析
23、(1)“校友編號”和“身份證號”。
(2)“校友信息”關系模式可以達到第二范式,不滿足第三范式。
由于“校友信息”關系模式的主鍵是“校友編號”,但又包含函數依賴:
班級→院系,入學年份
不滿足第三范式的要求,即存在非主屬性對碼的傳遞依賴。
本題考查數據庫理論的規范化,屬于比較傳統的題目,考查點也與往年類似。
本問題考查非主屬性和第三范式。
根據“校友信息”關系模式可知,“校友編號”和“身份證號”都是校友信息的決定因素,因此都是候選鍵的屬性。
根據第三范式的要求:每一個非主屬性既不部分依賴于碼也不傳遞依賴于碼。 根據“校友信息”關系模式,其中存在以下函數依賴:
班級→院系,入學年份
而由于“校友信息”關系模式的主鍵是“校友編號”,因而,存在非主屬性對碼的傳遞依賴。所以,“校友信息”關系模式可以達到第二范式,但不滿足第三范式。
24、(1)“捐贈信息”關系不滿足第二范式,即非主屬性不完全依賴于碼。
(2)會造成:插入異常、刪除異常和修改復雜(或修改異常)。
(3)分解后的關系模式如下:
捐贈信息1(捐贈編號,捐贈校友,捐贈時間,捐贈金額,捐贈類型,使用方式)
捐贈信息2(受益人身份證號,受益人姓名,受益人所在單位,受益人類型)
捐贈信息3(捐贈編號,受益人身份證號,受益金額,使用說明)
(1)修正后的主鍵如下:
捐贈信息1(捐贈編號,捐贈校友,捐贈時間,捐贈金額,捐贈類型,使用方式)
捐贈信息2(受益人身份證號,受益人姓名,受益人所在單位,受益人類型)
捐贈信息3(捐贈編號,受益人身份證號,受益金額,使用說明)
本問題考查第二范式和第三范式。
根據第三范式的要求:非主屬性不完全依賴于碼。
根據“捐贈信息”關系模式,可知其碼為(捐贈編號,受益人身份證號),而又存在部分函數依賴:
捐贈編號→捐贈校友,捐贈時間,捐贈金額,捐贈類型,使用方式。
受益人身份證號→受益人姓名,受益人所在單位,受益人類型。
所以,捐贈信息”關系不滿足第二范式,會造成:插入異常、刪除異常和修改復雜(或修改異常)。
因為存在部分函數依賴,因此對“捐贈信息”進行分解,分解后的關系模式如下:
捐贈信息1(捐贈編號,捐贈校友,捐贈時間,捐贈金額,捐贈類型,使用方式)
捐贈信息2(受益人身份證號,受益人姓名,受益人所在單位,受益人類型)
捐贈信息3(捐贈編號,受益人身份證號,受益金額,使用說明)
其中,“捐贈信息1”關系的函數依賴為:
捐贈編號→捐贈校友,捐贈時間,捐贈金額,捐贈類型,使用方式。
“捐贈信息2”關系的函數依賴為:
受益人身份證號→受益人姓名,受益人所在單位,受益人類型。
“捐贈信息3”關系的函數依賴為:
捐贈編號,受益人身份證號→受益金額,使用說明。
這三個關系中的每一個非主屬性既不部分依賴于碼也不傳遞依賴于碼,因此滿足第三范式的要求。
25、(1)“項目受益情況”關系模式,不滿足第四范式。
(2)分解后的關系模式如下:
項目受益情況1(項目編號,受益單位,受益比例)
項目受益情況2(項目編號,捐贈編號,項目受益金額)
本問題考查的是第四范式。
根據“項目受益情況”關系模式可知,其碼為:項目編號,受益單位,捐贈編號。
而又存在部分函數依賴:
項目編號,受益單位→受益比例
項目編號,捐贈編號→項目受益金額
項目編號→→受益單位,受益比例
項目編號→→捐贈編號,項目受益金額
同時,可以根據第四范式的要求:不允許有非平凡且非函數依賴的多值依賴。
而在“項目受益情況”關系模式中存在如下的多值依賴:
項目編號→→受益單位,受益比例
項目編號→→捐贈編號,項目受益金額
因此,“項目受益情況”關系模式不滿足第四范式。
因為存在多值依賴,因此對“項目受益情況”進行分解,分解后的關系模式如下:
項目受益情況1(項目編號,受益單位,受益比例)
項目受益情況2(項目編號,捐贈編號,項目受益金額)
其中:
“項目受益情況1”關系的函數依賴為:項目編號,受益單位→受益比例。
“項目受益情況2”關系的函數依賴為:項目編號,捐贈編號→項目受益金額。
這兩個關系不存在多值依賴,因此滿足第四范式的要求。
相關鏈接:
數據庫系統工程師考試知識點分析與真題詳解(第4版)
數據庫系統工程師考試歷年試題分析與解答(第4版)
數據庫系統工程師考試下午知識點精講與考前必練
數據庫系統工程師考試考前串講
軟考不知道考啥科目?掃碼測最適合你的報考科目

熱門活動:【免費考前摸底】軟考4月模考大賽![]()
軟考備考資料免費領取
去領取
專注在線職業教育25年