數(shù)據庫課后練習答案_第1頁
數(shù)據庫課后練習答案_第2頁
數(shù)據庫課后練習答案_第3頁
已閱讀5頁,還剩46頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、數(shù)據庫系統(tǒng)及應用(第二版)習題解答習題一1. 什么是數(shù)據庫?數(shù)據庫是相互關聯(lián)的數(shù)據的集合,它用綜合的方法組織數(shù)據,具 有較小的數(shù)據冗余,可供多個用戶共享,具有較高的數(shù)據獨立性,具 有安全控制機制,能夠保證數(shù)據的安全、可靠,允許并發(fā)地使用數(shù)據 庫,能有效、及時地處理數(shù)據,并能保證數(shù)據的一致性和完整性。2. 簡要概述數(shù)據庫、數(shù)據庫管理系統(tǒng)和數(shù)據庫系統(tǒng)各自的含義。數(shù)據庫、數(shù)據庫管理系統(tǒng)和數(shù)據庫系統(tǒng)是三個不同的概念,數(shù)據 庫強調的是相互關聯(lián)的數(shù)據,數(shù)據庫管理系統(tǒng)是管理數(shù)據庫的系統(tǒng)軟 件,而數(shù)據庫系統(tǒng)強調的是基于數(shù)據庫的計算機應用系統(tǒng)。3. 數(shù)據獨立性的含義是什么?數(shù)據獨立性是指數(shù)據的組織和存儲方法與應

2、用程序互不依賴、彼 此獨立的特性。這種特性使數(shù)據的組織和存儲方法與應用程序互不依 賴,從而大大降低應用程序的開發(fā)代價和維護代價。4. 數(shù)據完整性的含義是什么?保證數(shù)據正確的特性在數(shù)據庫中稱之為數(shù)據完整性。5. 簡要概述數(shù)據庫管理員的職責。 數(shù)據庫管理員的職責可以概括如下:(1) 首先在數(shù)據庫規(guī)劃階段要參與選擇和評價與數(shù)據庫有關的 計算機軟件和硬件,要與數(shù)據庫用戶共同確定數(shù)據庫系統(tǒng)的目標和數(shù) 據庫應用需求,要確定數(shù)據庫的開發(fā)計劃;(2) 在數(shù)據庫設計階段要負責數(shù)據庫標準的制定和共用數(shù)據字 典的研制,要負責各級數(shù)據庫模式的設計,負責數(shù)據庫安全、可靠方 面的設計;(3) 在數(shù)據庫運行階段首先要負責對

3、用戶進行數(shù)據庫方面的培 訓;負責數(shù)據庫的轉儲和恢復;負責對數(shù)據庫中的數(shù)據進行維護;負 責監(jiān)視數(shù)據庫的性能, 并調整、 改善數(shù)據庫的性能, 提高系統(tǒng)的效率; 繼續(xù)負責數(shù)據庫安全系統(tǒng)的管理; 在運行過程中發(fā)現(xiàn)問題、 解決問題6. 文件系統(tǒng)用于數(shù)據管理存在哪些明顯的缺陷? 文件系統(tǒng)用于數(shù)據管理明顯存在如下缺陷:(1) 數(shù)據冗余大。這是因為每個文件都是為特定的用途設計的,因此就會造成同樣的數(shù)據在多個文件中重復存儲。(2) 數(shù)據不一致性。這往往是由數(shù)據冗余造成的, 在進行更新時, 稍不謹慎就會造成同一數(shù)據在不同文件中的不一致。(3) 程序和數(shù)據之間的獨立性差。 應用程序依賴于文件的存儲結 構,使得若修改

4、文件的存儲結構則必須修改程序。(4) 數(shù)據聯(lián)系弱。 文件與文件之間是獨立的, 文件之間的聯(lián)系必 須通過程序來構造。因此,文件系統(tǒng)是一個不具有彈性的、無結構的 數(shù)據集合,不能反映現(xiàn)實世界事物之間的聯(lián)系。習題二1. 數(shù)據的三種疇的含義是什么?數(shù)據需要我們的認識、理解、整理、規(guī)和加工,然后才能存放到 數(shù)據庫中。數(shù)據從現(xiàn)實生活進入到數(shù)據庫實際經歷了現(xiàn)實世界階段 (認 識、理解)、信息世界階段(規(guī)、提升)和機器世界階段(管理) ,我 們也把之稱為數(shù)據的三種疇,數(shù)據在三種疇中的概念、術語都有些不 同。2. 對以下問題分析實體之間的聯(lián)系,并分別畫出 E-R 圖: 略3. 試述為什么要討論實體之間的聯(lián)系類型?

5、實體之間的聯(lián)系類型決定了數(shù)據庫設計時的結果,與數(shù)據庫的設 計質量密切相關。4. 多對多聯(lián)系如何轉換成一對多聯(lián)系?并舉例說明。通過引入一個表示聯(lián)系的實體,將原來兩個實體之間的一個多對 多的聯(lián)系轉換成分別與表示聯(lián)系的實體之間的兩個一對多的聯(lián)系。例 如,倉庫和材料兩個實體之間存在著多對多的聯(lián)系,即一個倉庫可以 存放多種材料,一種材料可以存放在多個倉庫;通過引入一個庫存實 體轉換為倉庫與庫存之間的一對多聯(lián)系和材料與庫存之間的一對多聯(lián) 系。5. 解釋連接陷阱的概念,在操作數(shù)據庫時如何避免連接陷阱?所謂連接陷阱就是誤認為本來不存在聯(lián)系的兩個實體之間存在聯(lián) 系,從而強行進行連接操作,自然得到錯誤的結果。為了

6、避免連接陷 阱,必須明確實體之間的聯(lián)系和聯(lián)系類型,只在有聯(lián)系的實體之間進 行關聯(lián)操作。6. 傳統(tǒng)的三大數(shù)據模型是哪些?它們分別是如何表示實體之間 的聯(lián)系的?傳統(tǒng)的三大數(shù)據模型是層次模型、網狀模型和關系模型。層次模 型用層次結構表示聯(lián)系,它的典型代表 IMS 用層次型表示聯(lián)系;網狀 模型用網狀結構表示聯(lián)系,它的典型代表 CODASYS系表示聯(lián)系;關 系模型用關系表示聯(lián)系。7. 解釋存儲數(shù)據獨立性和概念數(shù)據獨立性的區(qū)別。存儲數(shù)據獨立性強調的是應用程序與數(shù)據的存儲結構相互獨立的 特性,即修改數(shù)據的存儲方法或數(shù)據結構時不影響應用程序;而概念 數(shù)據獨立性強調的是應用程序與數(shù)據的概念結構相互獨立的特性,即

7、 修改概念結構中的字段時不影響應用程序。8. 為什么說概念數(shù)據庫和外部數(shù)據庫物理上并不真正存在? 只有存儲數(shù)據庫是物理上存在的數(shù)據庫,概念數(shù)據庫是存儲數(shù)據庫的抽象,它反映了數(shù)據庫的全局邏輯結構;而外部數(shù)據庫是概念數(shù) 據庫的部分抽取,它反映了數(shù)據庫的局部邏輯結構。9. 說明在DBM防存儲模式、概念模式和外部模式的作用存儲模式描述了數(shù)據庫的存儲結構,它包括對存儲數(shù)據庫中每個 文件以及字段的描述,包括用于實現(xiàn)輔助關鍵字或存儲文件間聯(lián)系的 指針字段的細節(jié)。存儲數(shù)據庫利用存儲模式組織和存取存儲數(shù)據庫中 的文件。如果要修改存儲數(shù)據庫的結構(例如,用倒排文件代替多鏈 表),那么僅僅需要把這些修改反映在存儲模

8、式中, 以使數(shù)據庫存儲系 統(tǒng)能夠操作新的存儲數(shù)據庫。按這種方法,數(shù)據庫管理系統(tǒng)可以提供 存儲(物理)數(shù)據獨立性。概念模式是對概念數(shù)據庫的描述,它包括對概念文件及概念文件 之間聯(lián)系的描述。概念數(shù)據庫不包含真正的數(shù)據,一切都是由存儲數(shù) 據庫決定的。外部模式則是對外部數(shù)據庫的描述,它需要說明外部文件、構成 外部文件的字段及這些外部文件之間的聯(lián)系。數(shù)據庫管理系統(tǒng)提供了外部模式與概念模式之間的映象以及概念 模式與存儲模式之間的映象,使用戶通過外部數(shù)據庫或概念數(shù)據庫來 操作存儲數(shù)據庫。習題三1. 解釋屬性與值域的區(qū)別。屬性是二維表中的列,而值域是列或屬性的取值圍。2. 關系模型的三個組成部分是什么?關系數(shù)

9、據模型包括關系數(shù)據結構、 關系操作集合和關系完整性約束 三個重要因素。3. 對關系模型的操作都包括哪些? 關系數(shù)據模型中的操作包括:(1)傳統(tǒng)的集合運算:并( Union )、交( Intersection )、差 (Difference )、廣義笛卡爾積( Extended Cartesian Product );(2)專門的關系運算:選擇( Select )、投影( Project )、連接 (Join )、除( Divide );(3)有關的數(shù)據操作:查詢(Query)、插入(Insert )、刪除( Delete )、修改( Update)。4. 關系模型的完整性規(guī)則都有哪些? 在關系

10、數(shù)據模型中一般將數(shù)據完整性分為實體完整性、參照完整 性和用戶定義完整性。5. 試述外部關鍵字的概念和作用,外部關鍵字是否允許為空值,為什么?如果一個屬性集不是所在關系的關鍵字,但是是其他關系的關鍵 字,則該屬性集稱為外部關鍵字。外部關鍵字用于實現(xiàn)表與表之間的 參照完整性。外部關鍵字是否允許為空值取決于語義的規(guī)定。外部關鍵字的取 值或者為空值、或者為被參照關系中的某個關鍵字字段的值。6. 分別敘述在進行插入、刪除、更新操作時都需要進行哪些完整 性檢查,并說明理由。(1) 執(zhí)行插入操作時需要分別檢查實體完整性規(guī)則、 參照完整性 規(guī)則和用戶定義完整性規(guī)則。首先檢查實體完整性規(guī)則,如果插入元組的主關鍵

11、字的屬性不為 空值、并且相應的屬性值在關系中不存在 (即保持唯一性),則可以執(zhí) 行插入操作,否則不可以執(zhí)行插入操作。接著再檢查參照完整性規(guī)則,如果是向被參照關系插入元組,則 無須檢查參照完整性;如果是向參照關系插入元組,則要檢查外部關 鍵字屬性上的值是否在被參照關系中存在對應的主關鍵字的值,如果 存在則可以執(zhí)行插入操作,否則不允許執(zhí)行插入操作。另外,如果插 入元組的外部關鍵字允許為空值,則當外部關鍵字是空值時也允許執(zhí)行插入操作。最后檢查用戶定義完整性規(guī)則,如果插入的元組在相應的屬性值 上遵守了用戶定義完整性規(guī)則,則可以執(zhí)行插入操作,否則不可以執(zhí) 行插入操作。(2) 執(zhí)行刪除操作時一般只需要檢查

12、參照完整性規(guī)則。如果刪除的是參照關系的元組,則不需要進行參照完整性檢查, 可以執(zhí)行刪除操作。如果刪除的是被參照關系的元組,則檢查被刪除元組的主關鍵字 屬性的值是否被參照關系中某個元組的外部關鍵字引用,如果未被引 用則可以執(zhí)行刪除操作;否則可能有三種情況:1) 不可以執(zhí)行刪除操作,即拒絕刪除;2) 可以刪除,但需同時將參照關系中引用了該元組的對應元組一 起刪除,即執(zhí)行級聯(lián)刪除;3) 可以刪除,但需同時將參照關系中引用了該元組的對應元組的 外部關鍵字置為空值,即空值刪除。(3) 執(zhí)行更新操作可以看作是先刪除舊的元組, 然后再插入新的 元組。所以執(zhí)行更新操作時的完整性檢查綜合了上述兩種情況。7. 試

13、述關系的自然連接和等值連接的異同之處。自然連接和等值連接都是基于相等比較運算的連接,但是自然連 接要去掉重復的屬性,而等值連接卻不需要去掉重復的屬性。8. 以圖 3-6 的數(shù)據庫為例(可參照圖 5-1 ,該數(shù)據庫的實例),用關系代數(shù)完成以下檢索:注意:此處暫以 * 表示連接運算符。1)檢索在倉庫 WH工作的職工的工資。n職工號,工資(T倉庫號=WH2( 職工)2)檢索在工作的職工的工資。n職工號,工資(彷城市= (倉庫) * 職工)3)檢索的供應商的名稱。n供應商名(T地址=(供應商)4)檢索目前與職工E6有業(yè)務聯(lián)系的供應商的名稱。n供應商名(T職工號=E6“ (訂購單) * 供應商)5)檢索

14、所有職工的工資都大于 1220元的倉庫所在的城市n城市(倉庫)- n城市(T工資=1220 ( 職工) * 倉庫)6)檢索和的所有供應商都有業(yè)務聯(lián)系的職工的工資。n職工號,工資(職工* (訂購單n供應商號(彷地址=(供應商)7)檢索至少和職工E1、E4 E7都有聯(lián)系的供應商的名稱。n供應商名 (訂購單+ ( “ E1” , ” E4” , ” E7 ) * 供應商)9. 試述關系數(shù)據庫系統(tǒng)的三層模式結構。略習題四1. 簡述客戶/ 服務器結構的概念,并說明客戶 / 服務器結構與文件 服務器網絡結構的區(qū)別??蛻? 服務器結構的基本思想是應用程序或應用邏輯可以根據需 要劃分在服務器和客戶工作站中,它

15、既不像集中式系統(tǒng)那樣所有的應 用程序都在主機上執(zhí)行,也不像文件服務器網絡那樣所有的應用程序 都在客戶端執(zhí)行,它可以使應用程序合理負擔在服務器和客戶端??蛻?/ 服務器結構與文件服務器網絡結構的硬件拓撲結構很相似,它們的根本區(qū)別在于: 客戶/ 服務器結構的服務器可以執(zhí)行應用程序;而文件服務器的服務器只是一個數(shù)據共享器,它不能執(zhí)行應用程 序。2. 在客戶/ 服務器結構中,數(shù)據庫服務器和客戶端計算機是如何分 工的?數(shù)據庫服務器應完成數(shù)據管理、信息共享、安全管理、以及一些 更高級的管理。它是一個開放的體系結構,可以接受來自各種應用程 序和開發(fā)工具的客戶端的連接;它除了要管理集中的數(shù)據庫之外,還 要處理

16、來自客戶端的數(shù)據訪問請求和將結果反饋給用戶(包括管理請 求隊列、管理緩存、 響應服務、管理結果和通知服務完成等)的工作。而客戶端計算機是面向最終用戶的,所以它的主要任務是提供友 好的用戶界面,提交數(shù)據訪問請求以及接收和處理數(shù)據庫的返回結果, 組織返回數(shù)據的輸出(如生成數(shù)據瀏覽窗口、 生成數(shù)據報表和圖形等) , 提供初步的數(shù)據驗證功能等。3. SQL Server 在安裝后默認創(chuàng)建了哪幾個系統(tǒng)數(shù)據庫?分別敘述 它們的作用。SQL Server 在安裝后默認創(chuàng)建了 4 系統(tǒng)數(shù)據庫,它們是:(1) master數(shù)據庫。master數(shù)據庫用于存儲SQLServer系統(tǒng)的 所有系統(tǒng)級信息,包括所有的其它

17、數(shù)據庫(如建立的用戶數(shù)據庫)的 信息(包括數(shù)據庫的設置、 對應的操作系統(tǒng)文件名稱和位置等) 、所有 數(shù)據庫注冊用戶的信息以及系統(tǒng)配置設置等。(2) tempdb數(shù)據庫。tempdb數(shù)據庫用于保存所有的臨時表和臨 時存儲過程,它還可以滿足任何其它的臨時存儲要求。(3) model 數(shù)據庫。 model 數(shù)據庫是一個模板數(shù)據庫,當使用 CREATE DATABASE令建立新的數(shù)據庫時,新數(shù)據庫的第一部分總是 通過復制 model 數(shù)據庫中的容創(chuàng)建,剩余部分由空頁填充。(4) msdb數(shù)據庫。msdb數(shù)據庫用于SQLServer代理程序調度報 警和作業(yè)等系統(tǒng)操作。4. 試述SQLServer的CRE

18、ATE3ATABAS命令在創(chuàng)建數(shù)據庫時是如 何申請物理存儲空間的?通過指定的物理文件名、 文件的大小等向操作系統(tǒng)申請物理存儲空 間。5. 試述 SQL Server 企業(yè)管理器的功能。略。習題五1. 試概述SQL語言的功能。SQL是一種一體化的語言,它包括了數(shù)據定義、數(shù)據查詢、數(shù)據操縱和數(shù)據控制等方面的功能, 它可以完成數(shù)據庫活動中的全部工作。2. 以圖5-1的數(shù)據庫為例,用SQL完成以下檢索:1)檢索在的供應商的名稱。SELECT * FROM供 應商 WHERE地址=2)檢索發(fā)給供應商S6的訂購單號。SELECT訂購單號FROM訂購單WHERE供應商號二S63)檢索出職工E6發(fā)給供應商S6

19、的訂購單信息。SELECT* FROM訂購單 WHER麒應商號=S6 AND職工號= E64)檢索出向供應商S3發(fā)過訂購單的職工的職工號和倉庫號。SELECT職工號,倉庫號FROM職工 WHERE職工號IN(SELECT職工號FROM訂購單 WHERE供應商號二S3 )5)檢索出目前與 S3 供應商沒有聯(lián)系的職工信息。SELECT * FROM職工 WHERE職工號 NOT IN(SELECT職工號FROM訂購單 WHERE供應商號二S3 )6)檢索出目前沒有任何訂購單的供應商信息。SELECT * FROM供 應商 WHERE NOT EXISTS(SELECT* FROM訂購單 WHERE

20、供應商號二供應商.供應商號)7)檢索出和職工E1、E3都有聯(lián)系的的供應商信息。SELECT * FROM供 應商 WHERE供 應商號 IN(SELECT供應商號FROM訂購單 WHERE職工號二E1)AND供應商號IN(SELECT供應商號FROM訂購單 WHERE職工號二E3 )8)檢索出目前和華通電子公司有業(yè)務聯(lián)系的每個職工的工資。SELECT職工號,工資FROM職工 WHERE職工號IN(SELECT職工號FRO M訂購單WHERE供應商號IN(SELECT供應商號FROM供應商WHERE供應商名二華通電子公司 )9) 檢索出與工資在 1220 元以下的職工沒有聯(lián)系的供應商的名稱。 s

21、elect distinct供應商名 , 供應商號from 供應商where 供應商號 not in -(s4,s7)-該供應商無與 E3的訂單(select distinct 供應商號from 訂購單where 供應商號 is not null and職工號 in (select 職工號 - 該職工工次低于 1220, 只有 E3from 職工 where 工資 1220 GROUP BY倉庫號20) 檢索出和面積最小的倉庫有聯(lián)系的供應商的個數(shù)。SELECT COUNT(*) FROI供 應商 WHERE供 應商號 IN(SELECT供應商號FROM訂購單 WHERE職工號IN(SELECT

22、職工號FRO M職工 WHERE倉庫號IN(SELECT倉庫號FRO M倉庫 WHERE面積=(SELECT MIN(面 積)FROM 倉庫)21) 檢索出工資低于本倉庫平均工資的職工信息。SELECT * FROM職工 out WHERE 工資 E5. 假設有一個名為參加的關系,該關系有屬性:職工(職工名) 、 工程(工程名)、時數(shù)(花費在工程上的小時數(shù)) 和工資(職工的工資); 一個參加記錄描述一個職工花費在一個工程上的總時數(shù)和他的工資; 另外,一個職工可以參加多個工程,多個職工可以參加同一個工程。請回答如下各問題:用A B、C D分別代表屬性職工、工程、時數(shù)和工資,貝1)確定這個關系的關

23、鍵字;AB2)找出這個關系中的所有函數(shù)依賴;AB-C , A-D3)指出這個關系上的哪些函數(shù)依賴會帶來操作異?,F(xiàn)象;D對關鍵字AB的部分函數(shù)依賴可能會帶來如下問題:數(shù)據冗余:一個職工參加多個工程,貝職工的工資值會重復;更新異常: 當改變職工的工資時, 可能會只修改了一部分, 從而造 成數(shù)據不一致;插入異常:當一個職工尚未承擔工程,但要插入職工信息(如工 資)貝不允許(因為沒有完整的關鍵字) ;刪除異常:當某個工程結束,刪除工程信息時,可能會將職工信 息(如工資)一同刪除(如果職工只參加了一項工程) 。4)這個關系是第幾式關系?2NF5)計算該關系上函數(shù)依賴集的最小覆蓋;Fm=AB-C, A-D

24、6) 將該關系分解成盡可能高的式,并指明是第幾式?分解為 R1(A,B,C) 和 R2(A,D)結果為 4NF6. 一個關系有4個字段A、B C D,這里A和B構成復合關鍵字,問滿足下列函數(shù)依賴的關系是第幾式?1) A B、C D都函數(shù)依賴于 ABBCNF或 4NF2) A B、C D都函數(shù)依賴于AB而D還函數(shù)依賴于C。2NF3) A B、C D都函數(shù)依賴于AB,而D還函數(shù)依賴于B。1NF4) A B、C D都函數(shù)依賴于AB而B還函數(shù)依賴于C。3NF7. 設有關系模式 R(A, B, C, D, E),并有函數(shù)依賴AB-D, ACE, BC- D,D-A,E- B,現(xiàn)將R分解成關系模式S(A,

25、 B, C)和其他一 些關系模式,請給出在關系模式 S 上成立的函數(shù)依賴。AC-B, BC-A習題十1. 試敘述概念數(shù)據庫設計和邏輯數(shù)據庫設計的區(qū)別,并說明各自 的主要工作容。概念數(shù)據庫設計是不依賴于任何數(shù)據庫管理系統(tǒng)的,它是對用戶 信息需求的歸納。概念設計的結果得到的是數(shù)據庫的概念結構,或稱 概念數(shù)據模型,由于它是從現(xiàn)實世界的角度進行的抽象和描述,所以 與具體的硬件環(huán)境和軟件環(huán)境均無關。而在邏輯數(shù)據庫首先要考慮實 現(xiàn)數(shù)據庫的數(shù)據庫管理系統(tǒng)所支持的數(shù)據模型是什么,并將概念數(shù)據 模型轉換為數(shù)據庫管理系統(tǒng)支持的數(shù)據模型。一般在概念設計階段主要工作容有:確定實體;確定實體的屬性;確定實體的標識屬性(

26、關鍵字) ;確定實體間的聯(lián)系和聯(lián)系類型;確定實現(xiàn)實體間聯(lián)系的屬性(外部關鍵字或連接屬性) ; 畫出表示概念模型的 E-R 圖;除此之外,為了以后對模式進行規(guī)化,還需要:確定屬性間的依賴關系而在邏輯設計階段一般主要工作容有:確定各個關系模式的主關鍵字,考慮實體完整性;確定各個關系模式的外部關鍵字,考慮參照完整性;確定各個關系模式中屬性的約束、規(guī)則和默認值,考慮域完整 性;根據用戶需求設計視圖;考慮安全方案和用戶使用權限等。2. 物理數(shù)據庫設計主要包括哪些容?物理數(shù)據庫設計的容是設計數(shù)據庫的存儲結構和物理實現(xiàn)方法。 般包括如下容:估算數(shù)據庫的數(shù)據存儲量;設計數(shù)據庫設備;安排數(shù)據庫的存儲;設計索引;

27、設計備份策略等。3. 到 Sybase 公司的( )下載 PowerDesigner 的試用 版,實踐利用 PowerDesigner 進行數(shù)據庫建模的方法和過程。略習題十一1. 面向對象數(shù)據庫是在什么背景下產生的?為什么需要面向對 象數(shù)據庫?在信息管理領域之外還有很多新的應用領域迫切需要使用數(shù)據庫,如計算機輔助設計(CAD、多媒體技術(音頻、視頻文件的存儲 和處理)等,這些應用往往需要存儲大量的復雜類型的數(shù)據,同時面 向對象的概念和技術也強烈地引發(fā)了數(shù)據庫對復雜數(shù)據類型的支持, 從而推動了面向對象數(shù)據庫的發(fā)展。由于關系數(shù)據庫不直接支持復雜數(shù)據類型,致使一些必須使用復 雜數(shù)據類型的應用實現(xiàn)起來

28、不是很方便、并且效率較低。另外關系模 型也不支持構造類型和繼承,這都使得人們希望發(fā)展面向對象的數(shù)據 庫。2. 什么是對象的封裝性、繼承性和多態(tài)性? 封裝性是指將類的數(shù)據和操作封裝在類定義中,對用戶來講類的 “功能”是可見的,而實現(xiàn)部分是封裝在類定義中的,用戶是看不見 的。這種封閉性保證了每個對象的實現(xiàn)都獨立于其他對象的細節(jié),從 而有利于保證軟件的質量。繼承性是指可以利用已有的類去定義新的類。如果根據類 A 定義 類B,則說類B繼承了類A,同時把類A稱作基類,把類B稱作子類。 子類不僅可以繼承基類的所有性質,還可以在子類中定義新的性質。 繼承性使得基類中的代碼可以共享和重用,所以繼承性有助于軟件

29、可 重用性的實現(xiàn)。多態(tài)性是指同一個函數(shù)可以有多種作用,即: 同一個函數(shù)根據不同的引用對象可以完成不同的功能; 同一個函數(shù)即便引用同一個對象, 但由于傳遞的參數(shù)不同也可以 完成不同的功能。多態(tài)性可以為整個應用和所有對象部提供一個一致的接口,沒有 必要為相同的動作命名和編寫不同的函數(shù),它完全可以根據引用的對 象不同、傳遞的消息不同來完成不同的功能。這樣做也與現(xiàn)實世界中 管理和運作方法相吻合。3. 面向對象數(shù)據庫的研究方法主要有哪些?面向對象數(shù)據庫的研究方法目前主要有以下三種:擴充關系數(shù)據模型。將成熟的關系數(shù)據庫與面向對象數(shù)據庫方 法結合起來,可減少研制工作量、縮短研制周期。這種方法的弱點是 不能全

30、面支持面向對象的特征。在面向對象語言中嵌入數(shù)據庫功能而形成面向對象數(shù)據庫。該 方法的關鍵是如何在面向對象語言中增加持久性對象的存儲管理。使 用此方法受到面向對象語言的一些限制。開發(fā)全新的數(shù)據模型,從底層實現(xiàn)面向對象數(shù)據庫系統(tǒng)。這是 最徹底的方法,缺點是難度大,一方面缺乏統(tǒng)一的數(shù)據模式及形式化 理論,另一方面在查詢優(yōu)化、視圖及數(shù)據庫工具方面仍為空白。4. 面向對象數(shù)據庫應該具備哪些基本特征?一個面向對象數(shù)據庫系統(tǒng)應該具備如下的基本容和特征:在數(shù)據模型方面支持對象、復合對象、封裝、類、繼承、重載、 滯后聯(lián)編、多態(tài)性等基本概念。其中復合對象的概念包括支持生成復 合對象的構造器(元組、集合、包、列表、

31、數(shù)組等) 。數(shù)據庫管理系統(tǒng)除了具有傳統(tǒng)的數(shù)據庫管理系統(tǒng)所具有的功能 (如并發(fā)控制、故障和恢復)外,還支持永久對象、長事務處理和嵌 套事務,具有版本管理和模式演化的能力,能維護數(shù)據完整性,適合 在分布式環(huán)境下工作。數(shù)據庫訪問界面要支持消息傳遞,提供計算能力完備的數(shù)據庫程序設計語言,能解決數(shù)據庫語言與宿主語言的某些不匹配問題,提 供類似SQL的非過程化查詢功能。5. SQL99支持 ORDBMS還是 OODBMSSQL99支持的是 ORDBMS6. 比較RDBMSORDBM和 OODBMS然后分別描述一個適合使用RDBMSORDBM和OODBM的應用,并說明原因。略習題十二1. 解釋ODBC勺概念

32、。ODB(C OpenDataBase Connectivity )的全稱是開放數(shù)據庫互連, 它是一種訪問數(shù)據庫的統(tǒng)一界面標準。2. 應用程序是如何通過 ODB前問數(shù)據庫的?應用程序通過調用ODBC函數(shù)可以完成對數(shù)據庫的訪問操作,它所 執(zhí)行的任務或完成的工作包括: 請求對數(shù)據源的連接, 獲取連接句柄; 指定事務控制方式;定義接收結果的數(shù)據區(qū);向數(shù)據源發(fā)送SQL語句; 接收SQL的查詢結果;處理出錯信息,并將出錯信息返回給應用程序; 終止對數(shù)據源的連接。3. 設有基于 SQL Server 的 pubs 數(shù)據源,它對應于 pubs 數(shù)據庫, 寫出利用 Visual FoxPro 訪問或操作 SQ

33、L Server 的如下語句:1) 連接到 pubs 數(shù)據庫;gn=SQLCONNECT(pubs,sa)2) 查詢 employee 表的全部信息;=SQLEXEC(gn,SELECT * FROM employee)3) 為 publishers 表準備一個帶參數(shù)的查詢,可以指定 pub_name(名)進行查詢;=SQLPREPARE(gn,SELECT * FROM publishers WHERE pub_name=?m_p_name)4) 以前一小題為基礎,查詢“ Five Lakes Publishing ”的信息; m_p_name=Five Lakes Publishing=S

34、QLEXEC(gn)5) 從 sales 表中刪除 stor_id 為 6380 的記錄。 =SQLEXEC(gn,DELETE FROM sales where stor_id=6380)4. PowerBuilder 是個什么類型的軟件產品?PowerBuilder 是一個面向對象的數(shù)據庫應用系統(tǒng)開發(fā)工具。5. PowerBuilder 都可以通過哪些方式訪問數(shù)據庫?PowerBuilder 都可以通過各種接口訪問數(shù)據庫,如 ODB、C JDBC、 OLE DB和各種數(shù)據庫專用接口等。6. 試述 PowerBuilder 中事務對象的概念。PowerBuilder 的事務對象是 PowerScript 與數(shù)據庫的通訊區(qū), 只 有通過事務對象才能完成對數(shù)據庫的操作。7. 使用 PowerBuilder 完成 12.3 節(jié)中的例子,初步掌握使用 PowerBuilder 進行開發(fā)的方法。略8. 試述基于組件的數(shù)據庫開發(fā)的基本思想。克服傳統(tǒng) C/S 結構的明顯缺點(缺乏中心控制、缺乏安全性和沉 重的客戶端負載等),以面向對象技術為基礎, 將業(yè)務處理邏輯和規(guī)則按完整的邏輯單元進行封裝,即將相關的類封裝成組件,并使它們部 署在應用服務器上,客戶端應用程序不再直接和數(shù)據庫打交道,而是 通過部署在服務器上的組件完成數(shù)據操作。9. 查閱有關資料,進一

溫馨提示

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

評論

0/150

提交評論