全國計算機等級考試四級數據庫工程師教程課后習題答案_第1頁
全國計算機等級考試四級數據庫工程師教程課后習題答案_第2頁
全國計算機等級考試四級數據庫工程師教程課后習題答案_第3頁
全國計算機等級考試四級數據庫工程師教程課后習題答案_第4頁
全國計算機等級考試四級數據庫工程師教程課后習題答案_第5頁
已閱讀5頁,還剩21頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、精選優質文檔-傾情為你奉上全國計算機等級考試四級數據庫工程師考試大綱(2008年版)基本要求1.掌握數據庫技術的基本概念、原理、方法和技術;2.能夠使用SQL語言實現數據庫操作;3.具備數據庫系統安裝、配置及數據庫管理與維護的基本技能;4.掌握數據庫管理與維護的基本方法;5.掌握數據庫性能優化的基本方法;6.了解數據庫應用系統的生命周期及其設計、開發過程;7.熟悉常用的數據庫管理和開發工具,具備用指定的工具管理和開發簡單數據庫應用系統的能力;8.了解數據庫技術的最新發展。考試內容一、數據庫應用系統分析及規劃1.軟件工程與軟件生命周期。2.數據庫系統生命周期。3.數據庫開發方法與工具。4.數據庫

2、應用體系結構。5.數據庫應用接口。二、數據庫設計及實現1概念設計。2.邏輯設計。3.物理設計。4.數據庫對象實現及操作。三、數據庫存儲技術1存儲與文件結構。2. 索引技術。四、并發控制技術 1事務管理。 2.并發控制技術。 3.死鎖處理。五、數據庫管理與維護1、數據完整性。2、數據庫安全性。3、數據庫可靠性。4、監控分析。5、參數調整。6、查詢優化。7、空間管理。六、數據庫技術的發展與新技術1、分布式數據庫。2、對象數據庫。3、并行數據庫。4、數據倉庫與數據挖掘。考試方式一、筆試:120分鐘,滿分100分。二、上機考試:120分鐘,滿分100分。*上機考試內容及要求:(1)考試環境數據庫管理系

3、統:SQL Sever 2000編程環境和語言:Visual Basic 6.0(2)在指定的數據庫管理系統下完成下述操作創建和管理數據庫創建數據庫對象數據查詢數據庫備份與恢復安全管理事務及并發控制數據導入導出(3)在指定開發環境下開發C/S結構的數據庫應用系統 *注:上機考試暫不要求,上機操作考核在筆試中體現。全國計算機等級考試四級教程(數據庫工程師)習題參考答案第1章習題參考答案1.1 答案(1)信息是現實世界事物的存在方式和運動狀態的反映,是對事物之間相互聯系、相互作用的描述。(2)數據是描述現實世界事物的符號記錄,是用物理符號記錄下來的可以識別的信息。(3)數據處理是指對數據進行分類、

4、收集、組織、存儲,進而從已有數據出發,抽取或推導出表示新的信息的數據。(4)數據管理是指對數據的分類、收集、組織、編碼、存儲、檢索和維護過程,是數據處理業務的重要環節。(5)數據模型是數據庫系統的形式框架,是用來描述數據的一組概念和定義,包括描述數據、數據聯系、數據操作、數據語義以及數據一致性的概念工具。(6)概念數據模型是按用戶的觀點對現實世界數據和信息進行建模的工具,常用的概念數據模型是實體-聯系模型。(7)數據結構模型是機器世界中與具體DBMS相關的數據模型,其典型代表是關系模型。(8)物理數據模型描述數據在數據庫系統中的實際存儲組織方式。(9)模式是對數據庫中全體數據的邏輯結構和特征的

5、描述,是所有用戶的公共數據視圖,也稱為邏輯模式或概念模式。(10)外模式是對數據庫用戶能夠看見和使用的局部數據的邏輯結構和特征的描述,是與某一應用有關的數據的邏輯表示,也稱為子模式、用戶模式或用戶視圖。(12)內模式是對數據庫中數據的物理結構和存儲方式的描述,也稱為物理模式或存儲模式。(13)外模式/模式映像是對數據庫中不同用戶的外模式與數據庫邏輯模式之間對應關系的描述。(14)模式/內模式映像是對數據庫中數據全局邏輯結構與數據的物理存儲組織結構之間對應關系的描述。1.2 答案數據庫是存儲在計算機內的共享數據集合,數據庫管理系統是一種數據管理系統軟件。數據庫系統則是在計算機系統中引入數據庫后的

6、軟硬件系統構成,包括了數據庫和數據庫管理系統。1.3 答案數據模型的組成要素有數據結構、數據操作和完整性約束。1.4 答案當數據庫模式發生變化時,通過調整外模式/模式間的映像關系,使得應用程序不必隨之修改,從而保證數據與應用程序間的邏輯獨立性,簡稱數據的邏輯獨立性。當數據庫數據的物理存儲結構改變時,通過調整模式/內模式映像關系,保持數據庫模式不變,使數據庫系統的外模式和應用程序不隨之改變,保證數據與應用程序間的物理獨立性,簡稱數據的物理獨立性。1.5 答案DBMS的主要功能有數據定義、數據操縱、數據庫運行管理與控制、數據庫建立與維護。1.6 答案DBMS包括查詢處理器和存儲管理器兩部分。查詢處

7、理器實現面向用戶的查詢分析處理和優化功能。存儲管理器為用戶和應用程序提供了訪問存儲在數據庫文件中的應用數據的接口。1.7 答案近年來出現的數據庫新技術有工程數據庫、演繹數據庫、知識數據庫、模糊數據庫、時態數據庫、統計數據庫、空間數據庫、多媒體數據庫、對象數據庫、并行數據庫、移動數據庫、基于網格的數據管理技術等。第2章習題參考答案2.1 答案(1)軟件生命周期是指軟件產品從考慮其概念開始,到該產品不再使用的整個時期。一般包括概念階段、需求階段、設計階段、實現階段、測試階段、安裝部署及交付階段、運行階段與維護階段。(2)數據庫應用系統需求是指用戶對數據庫應用系統在功能、性能、行為、設計約束等方面的

8、期望和要求。2.2 答案數據庫應用系統中的軟件包括操作系統、數據庫管理系統、中間件和開發工具、與數據訪問與處理有關的應用軟件、與數據訪問與處理無關的應用軟件。2.3 答案(1)參照軟件開發瀑布模型原理,DBAS的生命周期由項目規劃、需求分析、系統設計、實現與部署、運行管理與維護等5個基本活動組成。(2)將快速原型模型和增量模型的開發思路引入DBAS生命周期模型,允許漸進、迭代地開發DBAS。(3)根據DBAS的軟件組成和各自功能,細化DBAS需求分析和設計階段,引入了數據組織與存儲設計、數據訪問與處理設計、應用設計三條設計主線,分別用于設計DBAS中的數據庫、數據庫事務和應用程序。(4)將DB

9、AS設計階段細分為概念設計、邏輯設計、物理設計三個步驟,每一步的設計內容又涵蓋了三條設計主線。2.4 答案DBAS規劃與分析的主要工作內容分為系統規劃與定義、可行性分析、項目規劃三個方面。其中,系統規劃與定義是通過了解用戶實際需求,明確數據庫應用系統需要實現的目標和任務,并從數據管理和數據處理的角度,確定系統中數據庫軟件的功能、性能范圍;可行性分析則包括項目的技術可行性分析、經濟可行性分析、操作可行性分析和開發方案選擇;項目規劃則是對項目資源、成本和進度做出合理估算,并據此制定DBAS項目開發計劃。2.5 答案DBAS需求分析包括數據需求分析、數據處理需求分析、業務需求分析等方面,此外還包括對

10、系統在性能、存儲、安全、備份與恢復等方面的要求進行分析。2.6 答案數據庫應用系統的概念設計包括數據庫概念模型設計和系統總體設計。數據庫概念模型設計是依據數據需求分析結果,分析需要存儲在數據庫中的各類數據對象的特征及其相互間關聯關系,并表示為概念數據模型;系統總體設計則是依據系統規劃與分析結果和系統需求分析結果,確定系統軟硬件總體框架。2.7 答案數據庫應用系統的邏輯設計包括數據庫邏輯結構設計、數據庫事務概要設計、應用程序概要設計三方面。數據庫邏輯結構設計的主要步驟為:將E-R圖轉換為初始關系模式、對初始關系模式進行優化、檢查關系表對數據庫事務的支持性、確定關系模式完整性約束、設計基于關系模式

11、的用戶視圖。2.8 答案數據庫應用系統物理設計包括數據庫物理結構設計、數據庫事務詳細設計和應用程序詳細設計。數據庫事務詳細設計是根據事務處理流程,面向具體DBMS平臺和開發環境,利用SQL語句、數據庫訪問接口,采用高級程序設計語言或DBMS提供的事務實現機制,設計數據庫事務。2.9 答案數據庫應用系統的系統實現和部署包括建立數據庫結構、數據加載、事務和應用程序的編碼及測試、系統集成測試與試運行、系統部署等工作內容。2.10 答案數據庫應用系統的運行與維護包括日常維護、系統監控與分析、系統性能優化調整、系統升級進化。第3章習題參考答案3.1 答案需求分析階段的主要任務是通過需求分析的工作把用戶對

12、應用系統的非形式化需求不斷揭示和挖掘出來,其目的在于明確應用系統的目標、功能、性能、數據范圍和相關約束,形成需求說明書,作為系統開發后續各階段的工作基礎。完成需求分析的基本方法是調查分析,即面談、實地觀察、問卷調查及查閱資料。3.2 答案例如,可采用下列過程和步驟完成學校選課系統的需求分析:(1)標識問題標識問題從現行教務系統的業務流程做起,采用面談、觀察等方式理解現行教務系統的業務流程,包括現行教務流程存在的問題及需要改進的方面,通過對系統各類問題的識別和標識獲得對待建選課系統功能、性能及運行環境等的全面理解。(2)建立需求模型使用DFD等建模方法建立選課系統需求模型,借助模型及抽象方法把選

13、課系統中的各類活動,如學籍管理、課程管理及選課、補退選等功能描述清楚,使得各類人員便于認識、理解系統所實現的功能。(3)描述需求按照需求說明書規格全面地、完整地描述及說明選課系統的功能性需求和非功能性需求。(4)確認需求由相關專家及人員確認和進一步檢查選課系統需求的合理性、正確性和有效性,以確保需求分析的結果是全面的、準確的和一致的。3.3 答案(1)不過早陷入具體的細節。(2)從整體或宏觀入手分析問題,如業務系統的總體結構,系統及子系統的關系。(3)通過圖形化的模型對象直觀地表示系統要做什么,完成什么功能。(4)圖形化建模方法方便系統分析員理解和描述系統。(5)模型對象不涉及太多技術術語,便

14、于用戶理解模型。3.4 答案功能需求主要描述應用信息系統的處理要求。例如,本書應用案例“商場經營管理系統”用了兩層數據流圖較全面的描述了商場經營管理系統將要完成的功能。圖3.3第一層數據流圖從總體描述了系統的主要功能及完成商場經營管理涉及的信息及信息范圍以及目標系統與外部的數據交換關系。圖3.4第二層數據流圖描述了實現商場業務活動需要的基本功能,如庫存管理、銷售管理、會員管理及查詢統計以及完成以上各處理要求需要的輸入、輸出數據及信息。信息需求主要描述目標系統需要存儲和管理哪些數據,這些數據具有什么屬性特征和組成格式。商場經營管理系統的數據需求見2.7.2所列的數據對象。性能需求描述應用系統對性

15、能的要求。例如,商場經營管理系統對響應時間,存儲容量,系統的適應性,數據的安全性、數據的完整性、一致性和可靠性等方面的要求。3.6 答案(1)商場經營管理系統A0圖會員卡入庫單市場信息計算機軟件及硬件查詢及統計信息商場經營管理系統編號A-0商品表(2) 商場經營管理系統A0圖會員管理銷售管理庫存管理查詢及統計I1會員卡C1會員信息會員信息市場信息商品表I3入庫單I2出庫單M1I1銷售明細I3查詢及統計信息O1庫存信息M1M1M1編號A0父圖TOP 3.7 答案(1)電子產品租借管理系統第一層數據流圖P1 客戶信息電子產品店員信息租借產品租借產品客戶客戶供應商商店(2)電子產品租借管理系統第二層

16、數據流圖P1.1確認客戶及管理員認證客戶借閱需求P1.2信息查詢P1.3租借 客戶D1D3電子產品庫存租借記錄D4P1.4返還生成租借信息刪除租借記錄客戶借閱清單返還產品P1.5報表生成店經理統計信息第4章習題參考答案4.1 答案數據庫概念設計包括如下基本步驟:(1)確定實體集(2)確定聯系和聯系類型(3)建立由信息模型表示的企業模型(4)確定實體集屬性(5)對信息模型優化4.2 答案(1)實體集與實體集實例如,李明讀了兩本書,丁一讀了3本書。根據這個事實可以抽象出一個數據模型“學生讀書”。其中“學生”是一個實體集,因為實體集描述具有相同屬性特征和性質的事物集合(如學生對象集合);而其中的“李

17、明”、“丁一”是學生實體集中的實例,因為他們都是學生集合中的一個具體對象,實體集實例描述一個集合中客觀存在并可以相互區分的事物。(2)屬性與屬性實例如“學生讀書”數據模型中的姓名是學生實體集的一個屬性,屬性描述實體所具有的某一特征或性質,一個實體通常由多個屬性來刻畫;而“李明”、“丁一”是姓名屬性的實例也是姓名屬性的取值。(3)聯系與聯系基數學生和圖書兩個實體集之間的關系叫做“聯系”,聯系描述實體集之間的一種連接或關系;如果實體集學生的一個實例與實體集圖書的2個、3個或N個實例相聯系, 就說明在聯系的學生端有基數1,而在聯系的圖書端有基數2、3、或N, 聯系的基數刻畫兩個實體集之間聯系的類型:

18、1:1或1:N或M:N。4.3 答案(1)分類聯系在現實世界中,有些事物是其它事物的類。例如,實體集 “電冰箱”、“洗衣機”、“彩電”是實體集“電器”的分類實體集。“分類聯系”描述兩個或多個實體集之間的聯系,在這些實體集中,存在一個一般實體集如電器,它的每一個實例都恰好與一個且僅一個分類實體集如“電冰箱”或“洗衣機”或“彩電”的一個實例相聯系。通常,一般實體集的每一個實例和與之相關的一個分類實體集實例描述的是現實世界的同一事物,它們具有相同的唯一標識符。(2)不確定聯系例如,商場允許一位客戶購買多種商品,而同一種商品允許多名客戶購買。在實體集“客戶”和“商品”之間就存在著不確定的聯系。不確定聯

19、系又稱為“多對多聯系”或M:N的聯系。這種聯系關聯的兩個實體集之間的任一實體集的一個實例都將對應另一個實體集的1個或多個實例。4.4 答案(1)教務管理系統ER圖 學生學生 教師 教材 課程使用聘用1nn1nmpqn1 成績 班級11教課被管理管理 系教課 招收n1ER圖實體集屬性列表:系實體集屬性:系號,系名,系主任,系辦公室電話 班級實體集:班級名,學生人數學生實體集屬性:學號,姓名,性別,出生日期 教師實體集屬性:教師號,教師名,職稱,性別,出生日期,工資 課程實體集屬性:課程號,課程名,學分,上課時間,課容量教材實體集屬性:教材號,教材名,出版社,第一作者(2)教務管理系統Idef1x

20、圖系號(PK)系/10教師號(PK)教師/30班級名(PK) 班級/20教材號 (PK)教材/60 (PK)學號 (FK) 選課/65課程號(FK)使用管理招收教師號(FK)學生/40學號 (PK)教課/55課程號(FK)課程號(FK)教師號(FK)課程號(FK)課程號(PK)課程/50班級名 (FK)課程號 (FK)系號 (FK)系號 (FK)聘用被管理Idef1x圖實體集屬性列表:系/10, 屬性:系號,系名,系主任,系辦公室電話 班級/20,屬性:班級名,學生人數,系號,教師號教師/30,屬性:教師號,教師名,職稱,性別,出生日期,工資,系號學生/40,屬性:學號,姓名,性別,出生日期,

21、班級名 課程/50,屬性:課程號,課程名,學分,上課時間,課容量教課/55,屬性:教師號,課程號,授課評價教材/60,屬性:教材號,教材名,出版社,第一作者,課程號選課/65,屬性:學號,課號,成績4.5 答案電器銷售管理系統ER圖總公司分店職工電器領導聘用儲存銷售1nmn庫存量銷售量領導1n1n銷售時間ER圖實體集屬性列表:總公司實體集屬性:工商注冊號,地點,總裁,總公司電話,總公司職工數分店實體集屬性:分公司注冊號,地點,經理,電話,職工數職工實體集屬性:工作證號,姓名,性別,年齡,工資,工種,獎金電器實體集屬性:型號,名稱,電器指標,生產商,生產日期,進貨價格,售出價格第5章習題參考答案

22、5.1 答案關系模型用二維表格結構表示實體及實體間的聯系。現實世界中的每個客觀對象對應表中的一行叫做一條記錄,表中的每個列(屬性)描述對象類的某一特征,列的值(屬性的取值)刻畫和描述客觀對象的某一具體的特征。關系數據庫是按照二維表格組織和存儲的相互關聯的關系(表)的集合。關系數據庫采用關系模型在計算機中組織、存儲、處理和管理數據。5.2 答案如學號是學生關系(表)的主碼,因為這個屬性能夠唯一識別學生關系中的每一條記錄。5.3 答案主碼約束定義指定關系的主碼列不能取空值,并且取值要唯一。5.4 答案如果兩個關系R和S,X是R的屬性或屬性組,且X不是R的碼,但X是S的碼,則稱X是R的外碼。5.5

23、答案外碼約束也叫引用完整性約束,定義外碼與主碼之間的引用規則,即若關系R含有另一個關系S的主碼Ks所對應的屬性或屬性組F(該屬性或屬性組F稱為關系R的外碼),則關系R中的每一個元組在屬性組F上的值必須滿足:或者取空值,或者等于S中某個元組的主碼Ks的值。5.7 答案關系數據庫設計理論的基礎是函數依賴理論和規范化設計理論。規范化設計理論的主要內容是范式,即關系模式滿足的條件,它是數據庫邏輯設計的指南。5.8 答案(1)商場經營管理系統實體集屬性列表:供應商實體集屬性:供應商編號,名稱,地址,郵編,聯系人,電話,傳真,網址,電子郵箱,開戶銀行,賬戶名稱,賬戶賬號 商品及庫存實體集屬性:商品類別編號

24、,類別名稱,類別描述信息,商品編號,品名,生產日期,單價,庫存量,商品描述信息銷售員信息實體集屬性:銷售人員編號,姓名,性別,年齡,身份證,地址,郵編,電話,收銀臺編號,狀態,收銀臺描述信息顧客信息實體集屬性:顧客編號,姓名,性別,年齡,身份證號,地址,郵編,電話會員卡實體集屬性:會員卡號,有效起始日期,有效截止日期,積分,狀態(2)3NF關系模式(注,下劃屬性為主碼屬性):供應商信息(供應商編號(PK),名稱,地址,郵編,聯系人,電話,傳真,網址,電子郵箱,開戶銀行,賬戶名稱,賬戶賬號) 商品類別(商品類別編號(PK),類別名稱,類別描述信息)商品(商品編號(PK),品名,生產日期,單價,庫

25、存量,商品描述信息,商品類別編號(FK)采購入庫單據(入庫單據編號(PK),入庫日期,經手人,入庫單據描述)采購入庫單據明細(入庫單據編號(FK),商品編號(FK),進價,數量,供應商編號(FK),購買日期) 銷售人員(銷售人員編號(PK),姓名,性別,年齡,身份證,地址,郵編,電話)收銀臺(收銀臺編號(PK),狀態,收銀臺描述信息)會員卡(會員卡號(PK),有效起始日期,有效截止日期,積分,狀態)銷售單據(銷售單編號(PK),會員卡號(FK),本次積分,付款總金額,銷售日期,銷售人員編號(FK),收銀臺編號(FK),銷售單據描述)銷售單據明細(銷售單據編號FK,商品編號FK,單價,數量,總價

26、,折扣率,折扣總價)商品價格變動表(商品編號(FK),開始日期,結束日期,銷售價格,注釋)顧客信息(顧客編號(PK), 會員卡號(FK),姓名,性別,年齡,身份證號,地址,郵編,電話)5.9 答案(1)R的碼是(AD)(2)R是1NF的關系模式(3)將R分解為3NF的關系模式如下:R1(D,C,G)R2(A,B,E)R3(B,C,F)5.10 答案R1(TIME,TERM,ROOM,CNO)R2(TIME,CNO,TNO)R3(SNO,CNO,SCORE)R4(CNO,CNAME,CREDIT)第6章習題參考答案6.1 答案(1)堆文件是一種數據庫文件結構形式。在堆文件中,記錄隨機地存儲在文件

27、物理空間中,新插入的記錄存儲在文件的末尾。(2)順序文件是一種數據庫文件結構形式。在順序文件中,記錄按照查找碼值的升序或降序順序排列存儲。(3)聚集文件是一種數據庫文件結構形式。聚集文件具有多種記錄類型,存儲了來自多個關系表的記錄數據,每個關系表對應文件中的一種記錄類型。(4)索引技術(Indexing)是一種快速文件訪問技術,它將文件記錄在某個或某些域(或稱為屬性)上的取值與該記錄的物理地址直接聯系起來,提供了一種根據記錄域的取值快速訪問文件記錄的機制。(5)對數據文件和它的一個索引文件,如果數據文件中數據記錄的排列順序與索引文件中索引項的排列順序相一致,則該索引文件稱為聚集索引。否則,該索

28、引文件稱為非聚集索引。(6)在數據文件的包含主碼的屬性集上建立的索引稱為主索引。在數據文件的非主屬性上建立的索引稱為輔索引。(7)如果數據文件中的每個查找碼值在索引文件中都對應一個索引記錄,則該索引稱為稠密索引;如果只是一部分查找碼的值有對應的索引記錄,則該索引稱為稀疏索引。(8)如果一個數據文件按照某個查找碼組織為順序文件,同時又對數據文件建有聚集索引,則該數據文件稱為索引順序文件。6.2 答案設3門課程分別為DB、OS和COM,5個學生分別為BAI、DE、GU、HAI和YE。如果用戶查詢主要是根據課程查找選課的學生,則可建立如下圖所示的聚集文件。6.3 答案有序索引技術利用索引文件實現查找

29、碼取值到記錄物理地址間的映射關系。索引文件由索引記錄組成,每個記錄中的索引項記錄了某個特定的查找碼值和具有該值的數據文件記錄的物理地址。當需要訪問數據文件中某個數據記錄時,先根據查找碼值查閱索引文件,找到對應的索引項,然后從索引項中找出數據記錄在數據文件中的物理地址根據這個地址訪問數據記錄。6.4 答案散列技術是一種快速文件訪問技術,它利用散列函數實現文件記錄域取值到記錄物理地址間的直接映射關系。當需要訪問數據文件中查找碼值為si的某個或某些文件記錄時,將si作為散列函數h的輸入,計算得出的散列函數輸出值h(si)就是文件記錄在數據文件中的物理地址。6.5 答案關系DBMS數據字典中的元數據包

30、括:關系模式信息、與視圖描述有關的信息、關系的存儲結構和存取方法信息、完整性約束、安全性有關的信息、數據庫運行統計信息。DBMS使用數據字典中的元數據完成其相應的存儲管理和查詢處理功能。DBA利用數據字典監視DBMS使用情況,完成有關系統管理工作。一般用戶也可通過數據字典查閱部分數據庫結構信息。6.6 答案數據庫物理設計的主要步驟有數據庫邏輯模式調整、文件組織與存取設計、數據分布設計、安全模式設計、確定系統配置、物理模式評估。第7章習題參考答案7.1 答案數據庫應用系統功能設計包括數據庫事務設計和應用程序設計。與數據庫應用系統概念設計、邏輯設計、物理設計相對應,應用程序(軟件)設計分為總體設計

31、、概要設計和詳細設計,數據庫事務設計則由事務概要設計和事務詳細設計組成。7.2 答案復雜數據庫事務的設計與實現既要遵循應用領域特定的業務邏輯,又依賴于具體數據庫系統所提供的事務實現機制。復雜事務的設計可以分解為概要設計和詳細設計兩個步驟。概要設計注重事務本身的處理流程,暫時先不考慮事務中與DBMS平臺相關、具體的數據操作方法和事務實現機制,以提高設計結果的適用性。而事務詳細設計則從概要設計得出的事務流程出發,設計可在具體DBMS平臺下實現的特定事務。事務概要設計的核心內容是事務處理邏輯設計。事務概要設計包括了事務名稱、事務所訪問的關系表及關系屬性、事務處理邏輯、事務用戶等信息。7.3 答案軟件

32、體系結構是一種可預制、可重構的軟件框架結構,它描述了軟件系統的總體組織和層次劃分、系統元素及其功能分配、全局控制、系統元素間的協調和交互、數據存取等。第8章習題參考答案8.1 答案:02558.2 答案:年、月、日中間用“/”或者“-”分隔符,日期和時間間空一個空格,時、分、秒之間用“:”隔離。日期和時間數據用單引號括起來。8.3 答案:分鐘。8.4 答案:p為數字位個數,q為小數位個數。8.5 答案:精確到小數點后4位。8.6 答案Char(10)代表的是普通編碼的字符串,最多存放10個字符,5個漢字,固定的占用10個字節的空間。nchar(10)代表的是統一字符編碼的字符串,最多存放10個

33、字符,10個漢字,固定的占用20個字節的空間。8.7 答案Char(n)代表的是普通字符編碼按定長存儲的字符串,“n”的含義是字符的個數,固定占用n個字節的空間。varchar(n) 代表的是普通字符編碼按不定長存儲的字符串,“n”的含義也是字符的個數,按字符的實際長度占用空間。8.8 答案支持兩種,一種是系統使用的全局變量,用“”前綴標識。一種是用戶使用的普遍變量,用“”前綴標識。8.9 答案創建Student表的SQL語句為:CREATE TABLE Student (Sno char(7) primary key,Sname char(10) not null,Ssex char(2)

34、check (Ssex In (男, 女), Sage tinyint check(Sage = 14),Sdept varchar(20)創建Course表的SQL語句為:CREATE TABLE Course (Cno char(10) primary key,Cname char(20) not null,Periods smallint check (Periods0), Property char(4) check (Property in (必修, 選修)創建SC表的SQL語句為:CREATE TABLE SC (Sno char(7) ,Cno char(10) ,Grade s

35、malldate check(Grade between 0 and 100), Primary key(Sno, Cno),Foreign key (Sno) references Student(Sno),Foreign key(Cno) references Course(Cno)8.10 答案(1)Alter Table SC add XKLB char(4)(2)Alter Table Course Alter Column Periods tinyint(3)Alter Table Course Drop Column Property8.11 答案(1)select sno, s

36、um(grade) 總成績, avg(grade) 平均成績, count(*) 選課門數 from sc group by sno having count(*) 2(2)select sno, sum(grade) 總成績 from sc group by sno having sum(grade) 200(3)select sname, sdept from Student join SC on Student.Sno = SC.Sno where cno = C02(4)select sname, cno, grade from student s join sc on s.sno=

37、sc.sno where grade 80 Order by grade desc(5)select sname, ssex, grade from student s join sc on s.sno = sc.sno join course c on o = o where sdept = 計算機系 and ssex = 男 and cname = 數據庫基礎(6)select s.sno, sname, cno, grade from Student s left join SC on s.Sno = SC.Sno(7)select top 3 s.sno, sname, sdept,

38、grade from Student s join SC on s.Sno = SC.Sno join Course c on c.Cno = SC.Cno where cname = 數據庫基礎 order by grade desc(8)select t1.sno, t2.sno, o from sc as t1 join sc as t2 on o = o where t1.sno ( select avg(grade) from sc)(11)select sname,sdept,grade from student s join sc on s.sno = sc.sno join c

39、ourse c on o = o where grade = ( select min(grade) from sc where cno in ( select cno from course where cname = vb) and cname = vb(12)select s.sno 學號,sname 姓名, case sdept when 計算機系 then CS when 信息系 then IS when 數學系 then MA else OTHER end as 所在系,grade 成績 from student s join sc on s.sno = sc.sno join c

40、ourse c on o = o where cname = vb(13)select o, case when count(o) 100 then 人多 when count(o) between 40 and 100 then 一般 when count(o) 40 then 較少 when count(o) =0 then 無人選 end as 選課人數 from sc right join course c on o = o group by o(14)insert into Course values(C100, Java, 32, 選修)(15)delete from sc whe

41、re grade 50(16)(a)用連接查詢實現 delete from sc from sc join student s on s.sno=sc.sno where sdept = 信息系 and grade 50 (b)用子查詢實現 delete from sc where sno in ( select sno from student where sdept = 信息系 ) and grade 50(17)update sc set grade = grade + 10 where cno = c01(18)(a) 用子查詢實現 update sc set grade = grad

42、e + 10 where sno in ( select sno from student where sdept = 計算機系 ) and cno in ( select cno from course where cname = 計算機文化學 ) (b)用連接實現 update sc set grade = grade - 10 from student s join sc on s.sno = sc.sno join course c on o = o where sdept = 計算機系 and cname = 計算機文化學8.12 答案:索引的作用是加快數據的查詢速度。一般分為聚集索

43、引和非聚集索引兩種。8.13 答案不對,聚集索引也可以不是唯一性索引。反過來,唯一性索引也不一定是聚集索引。8.14 答案:對。如果是非聚集索引,則系統不調整數據的物理存放順序。8.15 答案(1)CREATE INDEX NonCluIdx_Sname on Student(Sname)(2)CREATE UNIQUE CLUSTERED INDEX CluUni_Idx on SC(Sno)8.16 答案視圖的作用包括:封裝了復雜的查詢語句,使用戶能從多角度看到同一數據,提高了數據的安全性以及提供了一定程度的邏輯獨立性。 8.17 答案(1)CREATE VIEW V1 AS select

44、 Sno, Sname, Sdept, Cno, Cname, Periods from Student s join SC on s.Sno = SC.Sno join Course c on c.Cno = SC.Cno(2)CREATE VIEW V2 AS select Sno as 學號, avg(grade) as 平均成績 group by Sno第9章習題參考答案9.1 答案(1)事務是構成數據庫應用中一個獨立邏輯工作單元的操作的集合,也是訪問并可能更新數據庫中各種數據項的一個程序執行單元。(2)定義在多個事務上的調度是這些事務的所有操作的一個執行序列,代表了這些操作的執行順序

45、。(3)事務Ti 的操作Ii與事務Tj的操作Ij是沖突的,當且僅當Ii 和 Ij訪問數據庫中同一個數據項Q,并且Ii 和 Ij中至少有一個是寫操作write(Q)。(4)如果一個并發調度沖突等價于某個串行調度,則稱該并發調度是沖突可串行的。(5)死鎖是指數據庫系統中部分或全部事務由于無法獲得對需要訪問的數據項的控制權而處于等待狀態,并且將一直等待下去的一種系統狀態。9.2 答案原子性指事務對數據庫的所有操作是一個不可分割的工作單元。這些操作要么全部執行,要么一個也不執行。一致性指當事務獨立執行時,其執行結果應維護數據庫的一致性,即數據庫不會因事務執行而遭受破壞。事務應使數據庫從一個一致性狀態轉

46、到另外一個一致性狀態。隔離性指當多個事務并發執行時,系統應保證一個事務的執行結果不受其它事務的干擾,事務并發執行結果與這些事務串行執行時的結果是一樣的。持久性指一個事務一旦成功完成全部操作,則它對數據庫的所有更新就永久地反映在數據庫中。即使以后系統發生了故障。9.3 答案1級加鎖協議要求事務T在修改數據項Q之前必須先對Q加X鎖,直到事務結束才釋放該鎖。事務結束包括正常結束(commit)和非正常結束(rollback)。但事務如果只是讀Q而不對其進行修改,是不需要對Q加鎖的。2級加鎖協議是在1級加鎖協議基礎上,要求事務T在讀取數據項Q之前必須先對其加S鎖,讀完Q后可以立即釋放S鎖。3級加鎖協議

47、則是在1級加鎖協議基礎上,要求事務T在讀取數據項Q之前必須先對其加S鎖,但是需要等到事務結束時才釋放該S鎖。9.4 答案2階段鎖協議將每個事務的執行過程分為加鎖階段和解鎖階段。在加鎖階段,事務可以申請獲得數據項上的任何類型的鎖,但不允許釋放任何鎖。在解鎖階段,事務可以釋放任何數據項上的任何類型的鎖,但不能再申請任何鎖。每個事務開始執行后就進入了加鎖階段。當第一次釋放鎖后,即轉入解鎖階段。9.5 答案解決死鎖主要采用死鎖預防和死鎖檢測與恢復兩類方法。死鎖預防利用死鎖預防協議,通過破壞死鎖產生的必要條件來避免系統進入死鎖狀態,防止死鎖發生。死鎖檢測與恢復則是允許系統進入死鎖狀態,并且定期檢查系統是

48、否發生死鎖。當發現系統發生死鎖后,采取相應的恢復機制使系統擺脫死鎖狀態。9.6 答案活鎖產生的原因是在系統非死鎖狀態下,某些事務由于始終無法獲得對所需訪問的數據項的控制權而長期等待下去,無法繼續執行。 9.7 答案TiTjLock-X(C)read(C)C:=C+1write(C)Lock-X(A)unlock(C)read(A)A:=A*2write(A)unlock(A)Lock-X(A)read(A)A:=A+1write(A)Lock-X(B)read(B)B:=B+1write(B)unlock(A)unlock(B)9.8 答案并發調度S9不等價于串行調度。因為T1中的write(Q)和

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論