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

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

24、6) 將該關(guān)系分解成盡可能高的式,并指明是第幾式?分解為 R1(A,B,C) 和 R2(A,D)結(jié)果為 4NF6. 一個關(guān)系有4個字段A、B C D,這里A和B構(gòu)成復(fù)合關(guān)鍵字,問滿足下列函數(shù)依賴的關(guān)系是第幾式?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. 設(shè)有關(guān)系模式 R(A, B, C, D, E),并有函數(shù)依賴AB-D, ACE, BC- D,D-A,E- B,現(xiàn)將R分解成關(guān)系模式S(A,

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

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

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

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

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

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

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

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

33、L Server 的如下語句:1) 連接到 pubs 數(shù)據(jù)庫;gn=SQLCONNECT(pubs,sa)2) 查詢 employee 表的全部信息;=SQLEXEC(gn,SELECT * FROM employee)3) 為 publishers 表準(zhǔn)備一個帶參數(shù)的查詢,可以指定 pub_name(名)進(jìn)行查詢;=SQLPREPARE(gn,SELECT * FROM publishers WHERE pub_name=?m_p_name)4) 以前一小題為基礎(chǔ),查詢“ 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 是個什么類型的軟件產(chǎn)品?PowerBuilder 是一個面向?qū)ο蟮臄?shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā)工具。5. PowerBuilder 都可以通過哪些方式訪問數(shù)據(jù)庫?PowerBuilder 都可以通過各種接口訪問數(shù)據(jù)庫,如 ODB、C JDBC、 OLE DB和各種數(shù)據(jù)庫專用接口等。6. 試述 PowerBuilder 中事務(wù)對象的概念。PowerBuilder 的事務(wù)對象是 PowerScript 與數(shù)據(jù)庫的通訊區(qū), 只 有通過事務(wù)對象才能完成對數(shù)據(jù)庫的操作。7. 使用 PowerBuilder 完成 12.3 節(jié)中的例子,初步掌握使用 PowerBuilder 進(jìn)行開發(fā)的方法。略8. 試述基于組件的數(shù)據(jù)庫開發(fā)的基本思想。克服傳統(tǒng) C/S 結(jié)構(gòu)的明顯缺點(diǎn)(缺乏中心控制、缺乏安全性和沉 重的客戶端負(fù)載等),以面向?qū)ο蠹夹g(shù)為基礎(chǔ), 將業(yè)務(wù)處理邏輯和規(guī)則按完整的邏輯單元進(jìn)行封裝,即將相關(guān)的類封裝成組件,并使它們部 署在應(yīng)用服務(wù)器上,客戶端應(yīng)用程序不再直接和數(shù)據(jù)庫打交道,而是 通過部署在服務(wù)器上的組件完成數(shù)據(jù)操作。9. 查閱有關(guān)資料,進(jìn)一

溫馨提示

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

評論

0/150

提交評論