《大數(shù)據(jù)庫原理與指導(dǎo)應(yīng)用》(孟凡榮 閆秋艷)課后習(xí)題問題詳解
《《大數(shù)據(jù)庫原理與指導(dǎo)應(yīng)用》(孟凡榮 閆秋艷)課后習(xí)題問題詳解》由會員分享,可在線閱讀,更多相關(guān)《《大數(shù)據(jù)庫原理與指導(dǎo)應(yīng)用》(孟凡榮 閆秋艷)課后習(xí)題問題詳解(36頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、word -第一章 名詞解釋 數(shù)據(jù)庫(DB) 數(shù)據(jù)庫系統(tǒng)(DBS) 數(shù)據(jù)庫管理系統(tǒng)(DBMS) 實體 實體集 屬性 關(guān)鍵字 數(shù)據(jù)模型 概念數(shù)據(jù)模型關(guān)系模型 模式 外模式 模式 數(shù)據(jù)獨立性 邏輯數(shù)據(jù)獨立性 物理數(shù)據(jù)獨立性 一對一聯(lián)系 一對多聯(lián)系 多對多聯(lián)系 數(shù)據(jù)庫(DB):在計算機(jī)的存儲設(shè)備上合理存放、相關(guān)聯(lián)、有結(jié)構(gòu)的數(shù)據(jù)集合。 數(shù)據(jù)庫系統(tǒng)(DBS):在計算機(jī)系統(tǒng)中引進(jìn)數(shù)據(jù)庫和數(shù)據(jù)庫管理系統(tǒng)后的組成?;蛘呤菍?/p>
2、現(xiàn)有組織地、動態(tài)地存儲大量相關(guān)的結(jié)構(gòu)化數(shù)據(jù),方便用戶使用數(shù)據(jù)庫的計算機(jī)軟件、硬件資源組成的系統(tǒng)。 數(shù)據(jù)庫管理系統(tǒng)(DBMS):一個操縱和管理數(shù)據(jù)庫的大型軟件,它由一組計算機(jī)程序構(gòu)成。它是位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件。 實體:客觀存在并可相互區(qū)別的個體。 實體集:具有一樣實體特性實體的集合。 屬性:表示實體的特性。 關(guān)鍵字:能夠唯一標(biāo)識文件中的某一個記錄的最小字段集。 數(shù)據(jù)模型:現(xiàn)實世界數(shù)據(jù)與信息的模擬和抽象。 概念數(shù)據(jù)模型:簡稱概念模型,是獨立于計算機(jī)系統(tǒng)的數(shù)據(jù)模型,完全不涉與信息在計算機(jī)中的表示,是面向數(shù)據(jù)庫用戶的現(xiàn)實世界模型,主要用來描述現(xiàn)實世界的概念化結(jié)構(gòu)。
3、關(guān)系模型:是最重要的一種數(shù)據(jù)模型,也是目前主要采用的數(shù)據(jù)模型,用二維表格表示現(xiàn)實世界實體集與實體集間的聯(lián)系。 模式:是由數(shù)據(jù)庫設(shè)計者綜合所有用戶數(shù)據(jù),按照統(tǒng)一的觀點構(gòu)造的對數(shù)據(jù)庫全局邏輯結(jié)構(gòu)的描述。 外模式:介于模式與應(yīng)用之間,是用戶與數(shù)據(jù)庫之間的接口,是數(shù)據(jù)庫用戶〔包括應(yīng)用程序員和最終用戶〕能夠看見和使用的局部數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述。 模式:也稱存儲模式,是對數(shù)據(jù)庫中數(shù)據(jù)物理結(jié)構(gòu)和存儲方式的描述,是數(shù)據(jù)在數(shù)據(jù)庫部的表示方式。 數(shù)據(jù)獨立性:應(yīng)用程序和數(shù)據(jù)結(jié)構(gòu)之間相互獨立,不受影響。 邏輯數(shù)據(jù)獨立性:表示一旦模式發(fā)生變化,無需改變外模式或應(yīng)用程序的能力。 物理數(shù)據(jù)獨立性:表示不會
4、因為模式發(fā)生改變而導(dǎo)致概念模式發(fā)生改變的能力。 一對一聯(lián)系:設(shè)有兩個實體集A、B,如果對于實體集A中的每一個實體,B中至多有一個實體與之有聯(lián)系,反之亦然,如此稱A、B有一對一聯(lián)系〔1: 1聯(lián)系〕。 一對多聯(lián)系:設(shè)有兩個實體集A、B,假如A中每個實體與B中任意個實體〔包括零個〕相聯(lián)系,而B中每個實體至多和A中一個實體有聯(lián)系,如此稱A和B是一對多聯(lián)系〔1:n聯(lián)系〕。 多對多聯(lián)系:設(shè)有兩個實體集A、B,假如兩個實體集A、B中的每一個實體都和另一個實體集中任意個實體〔包括零個〕有聯(lián)系,如此稱A、B是多對多聯(lián)系〔m:n聯(lián)系〕。 ⑴數(shù)據(jù)庫系統(tǒng)的一個主要特點是數(shù)據(jù)無冗余。 ⑵數(shù)據(jù)庫管理系統(tǒng)和數(shù)
5、據(jù)庫構(gòu)成了數(shù)據(jù)庫系統(tǒng)。 ⑶數(shù)據(jù)結(jié)構(gòu)化是數(shù)據(jù)庫和文件系統(tǒng)的根本區(qū)別。 ⑷假如干個屬性集合就能描述一個對象。 ⑸數(shù)據(jù)庫系統(tǒng)中數(shù)據(jù)具有完全獨立性。 ⑹ DBA主要職責(zé)是管理數(shù)據(jù)庫中的數(shù)據(jù)。 ⑺數(shù)據(jù)庫防止了一切數(shù)據(jù)重復(fù)。 ⑻數(shù)據(jù)操作語言是一個高級語言。 ⑼非過程化語言比過程化語言好。 ⑽模式是數(shù)據(jù)庫全局邏輯結(jié)構(gòu)的描述。 ⑾三級模式結(jié)構(gòu)是數(shù)據(jù)庫唯一的一種分級模式結(jié)構(gòu)。 ⑿層次數(shù)據(jù)模型和網(wǎng)狀數(shù)據(jù)模型都可用關(guān)系數(shù)據(jù)模型表示。 ⒀關(guān)系模型不僅可以描述實體,還可以描述實體與實體集之間的聯(lián)系。 ⒁關(guān)系數(shù)據(jù)模型與網(wǎng)狀數(shù)據(jù)模型相比具有查詢效率高的優(yōu)點。 ⒂網(wǎng)狀數(shù)據(jù)模型可以直接表示M:N的
6、聯(lián)系。 ⒃概念模型獨立于硬件設(shè)備和DBMS。 ⒄視圖對重構(gòu)數(shù)據(jù)庫提供了一定程度的物理獨立性。 ⒅實體是信息世界中的術(shù)語,與之相對應(yīng)的數(shù)據(jù)庫術(shù)語為字段。 ⒆數(shù)據(jù)庫系統(tǒng)的核心工作就是完成用戶級數(shù)據(jù)庫、概念級數(shù)據(jù)庫和物理級數(shù)據(jù)庫之間的映射。 ⒇一個網(wǎng)狀數(shù)據(jù)結(jié)構(gòu)模型可以變換為一個等價的層次數(shù)據(jù)結(jié)構(gòu)模型,這種變換以存儲空間為代價。 1-5:×,×,√,×,×, 6-10:×,×,√,×,√, 11-15:×,√,√,×,× 16-20:√,×,×,√,√ ⑴數(shù)據(jù)管理技術(shù)的開展過程。 計算機(jī)技術(shù)的開展使得數(shù)據(jù)管理技術(shù)也不斷向前開展,至今,經(jīng)歷了人工管理階段、文件系統(tǒng)階段和
7、數(shù)據(jù)庫系統(tǒng)階段。 ⑵數(shù)據(jù)庫系統(tǒng)的三個開展階段是什么? 1)層次型和網(wǎng)狀型: 代表產(chǎn)品是1969年IBM公司研制的層次模型數(shù)據(jù)庫管理系統(tǒng)IMS。 2)關(guān)系型數(shù)據(jù)型庫: 目前大局部數(shù)據(jù)庫采用的是關(guān)系型數(shù)據(jù)庫。1970年IBM公司的研究員E.F.Codd提出了關(guān)系模型。典型的關(guān)系DBMS產(chǎn)品有Oracle、Sybase、SQL Server、DB2、Access、VFP等等。 3)第三代數(shù)據(jù)庫將為更加豐富的數(shù)據(jù)模型和更強(qiáng)大的數(shù)據(jù)管理功能為特征,以提供傳統(tǒng)數(shù)據(jù)庫系統(tǒng)難以支持的新應(yīng)用。它必須支持面向?qū)ο?,具有開放性,能夠在多個平臺上使用。 ⑶文件系統(tǒng)與數(shù)據(jù)庫系統(tǒng)有何區(qū)別和聯(lián)系?
8、文件系統(tǒng)和數(shù)據(jù)庫系統(tǒng)之間的區(qū)別: 1〕 文件系統(tǒng)用文件將數(shù)據(jù)長期保存在外存上,數(shù)據(jù)庫系統(tǒng)用數(shù)據(jù)庫統(tǒng)一存儲數(shù)據(jù); 2〕 文件系統(tǒng)中的程序和數(shù)據(jù)有一定的聯(lián)系,數(shù)據(jù)庫系統(tǒng)中的程序和數(shù)據(jù)別離,數(shù)據(jù)具有較高的獨立性; 3〕 文件系統(tǒng)用操作系統(tǒng)中的存取方法對數(shù)據(jù)進(jìn)展管理,數(shù)據(jù)庫系統(tǒng)用DBMS統(tǒng)一管理和控制數(shù)據(jù); 4〕 文件系統(tǒng)實現(xiàn)以文件為單位的數(shù)據(jù)共享,數(shù)據(jù)庫系統(tǒng)實現(xiàn)以記錄和字段為單位的數(shù)據(jù)共享,數(shù)據(jù)結(jié)構(gòu)化,冗余度小。 文件系統(tǒng)和數(shù)據(jù)庫系統(tǒng)之間的聯(lián)系: 1〕 均為數(shù)據(jù)組織的管理技術(shù); 2〕 均由數(shù)據(jù)管理軟件管理數(shù)據(jù),程序與數(shù)據(jù)之間用存取方法進(jìn)展轉(zhuǎn)換; 3〕 數(shù)據(jù)庫系統(tǒng)是在文件系統(tǒng)
9、的根底上開展而來的。 ⑷數(shù)據(jù)庫系統(tǒng)的特點。 1)采用一定的數(shù)據(jù)模型實現(xiàn)數(shù)據(jù)結(jié)構(gòu)化 2)數(shù)據(jù)共享、冗余度小、防止了數(shù)據(jù)的不一致 3)具有較高的數(shù)據(jù)獨立性 4)數(shù)據(jù)由DBMS統(tǒng)一管理和控制 ⑸何謂數(shù)據(jù)的物理獨立性與數(shù)據(jù)的邏輯獨立性? 邏輯獨立性表示一旦模式發(fā)生變化,無需改變外模式或應(yīng)用程序的能力。 物理獨立性表示不會因為模式發(fā)生改變而導(dǎo)致概念模式發(fā)生改變的能力。 ⑹數(shù)據(jù)模型的三要素。 1)數(shù)據(jù)結(jié)構(gòu);2)數(shù)據(jù)操作;3)數(shù)據(jù)完整性。 ⑺舉例說明實體集之間具有1:1、1:n、m:n的聯(lián)系。 例如,有四個實體集:學(xué)生、學(xué)校、教師、校長,校長和學(xué)校為1:1聯(lián)系,學(xué)生和學(xué)校為1:n聯(lián)系
10、,學(xué)生和教師為m:n聯(lián)系。 ⑻關(guān)系數(shù)據(jù)模型的特點是什么? 關(guān)系數(shù)據(jù)模型的主要特征是用二維表格表示現(xiàn)實世界實體集與實體集間的聯(lián)系。具有堅實的理論根底、表達(dá)能力強(qiáng)、簡單和數(shù)據(jù)獨立性高等優(yōu)點,缺點是存取效率比擬低。 ⑼何謂空值? 所謂空值就是“不知道〞或“無意義〞的值。沒有給某個屬性賦值,如此稱其值為空(NULL)。 ⑽層次數(shù)據(jù)模型、網(wǎng)狀數(shù)據(jù)模型和關(guān)系數(shù)據(jù)模型的優(yōu)點和缺點。 1〕層次模型具有查詢效率較高、結(jié)構(gòu)簡單、層次清楚,便于在計算機(jī)實現(xiàn)的優(yōu)點,在層次數(shù)據(jù)結(jié)構(gòu)中,從根結(jié)點到樹中任意結(jié)點均存在一條唯一的層次路徑,為有效地進(jìn)展數(shù)據(jù)操縱也提供了條件,并且層次數(shù)據(jù)模型提供了良好的完整性支持。
11、 但層次模型也有缺點,一是層次數(shù)據(jù)模型缺乏直接表達(dá)現(xiàn)實世界中非層次型結(jié)構(gòu)的復(fù)雜聯(lián)系,二是層次順序的嚴(yán)格限制,使得對插入或刪除操作也帶來了較多的限制,并且查詢子女結(jié)點必須通過雙親結(jié)點,所以使得應(yīng)用程序的編寫也比擬復(fù)雜。 2〕網(wǎng)狀模型的主要優(yōu)點是能直接描述現(xiàn)實世界,記錄之間的聯(lián)系也是通過指針來實現(xiàn)的,所以查詢效率高。缺點是結(jié)構(gòu)和編程復(fù)雜,難掌握,不易使用。 3〕關(guān)系模型有堅實的理論根底。二維表不僅能表示實體集,而且能方便地表示實體集間的聯(lián)系,所以說它有很強(qiáng)的表達(dá)能力,這是層次模型和網(wǎng)狀模型所不與的。關(guān)系模型具有簡單、易學(xué)易用的優(yōu)點。數(shù)據(jù)獨立性高。 關(guān)系模型缺點是查詢效率常常不如非關(guān)系數(shù)據(jù)模型
12、。 ⑾舉例說明E-R圖的構(gòu)成規(guī)如此。 方 框:表示一實體集,在框?qū)懮蠈嶓w集的名字 菱形框:表示聯(lián)系,菱形框標(biāo)明聯(lián)系名,與其相關(guān)的實體集之間用箭頭表示,一個箭頭代表為1,兩個箭頭代表為多。 橢圓框:表示屬性,在框?qū)懮蠈傩缘拿?,并用無向邊連向與其相關(guān)的實體集或聯(lián)系。 在E-R圖中,有時為了突出各實體集之間的聯(lián)系,可以先畫出實體集與其屬性,然后再重點畫出實體之間的聯(lián)系。如圖1,圖2所示。 圖1 學(xué)生實體與其屬性 圖2 實體之間聯(lián)系 ⑿什么是外部模式?概念模式?部模式?它們之間有何聯(lián)系?這種分級結(jié)構(gòu)的優(yōu)點是什么? 外部模式又稱子模式,介于模式與應(yīng)用之間,是用戶與數(shù)據(jù)庫
13、之間的接口,是數(shù)據(jù)庫用戶〔包括應(yīng)用程序員和最終用戶〕能夠看見和使用的局部數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述。 概念模式簡稱模式,是由數(shù)據(jù)庫設(shè)計者綜合所有用戶數(shù)據(jù),按照統(tǒng)一的觀點構(gòu)造的對數(shù)據(jù)庫全局邏輯結(jié)構(gòu)的描述。 部模式也稱存儲模式,是對數(shù)據(jù)庫中數(shù)據(jù)物理結(jié)構(gòu)和存儲方式的描述,是數(shù)據(jù)在數(shù)據(jù)庫部的表示方式。 一個數(shù)據(jù)庫結(jié)構(gòu)從邏輯上可以劃分為三個層次:外部模式〔External Schema〕,概念模式〔Conceptual Schema〕和部模式〔Internal Schema〕,稱為數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)。 數(shù)據(jù)庫系統(tǒng)的三級模式是對數(shù)據(jù)進(jìn)展三個級別的抽象。它把數(shù)據(jù)的具體組織留給DBMS去做,用戶
14、只要抽象地處理數(shù)據(jù),而不必關(guān)心數(shù)據(jù)在機(jī)器中的具體表示方式和存儲方式。數(shù)據(jù)庫的三級結(jié)構(gòu)是依靠映像來聯(lián)系和互相轉(zhuǎn)換的。正是這兩層映像保證了數(shù)據(jù)庫系統(tǒng)中的數(shù)據(jù)具有較高的數(shù)據(jù)獨立性。 ⒀什么是數(shù)據(jù)獨立性?在數(shù)據(jù)庫系統(tǒng)體系結(jié)構(gòu)中是如何表現(xiàn)的? 1)數(shù)據(jù)獨立性:數(shù)據(jù)庫系統(tǒng)在某一層次模式上的改變不會使它的上一層模式也發(fā)生改變的過程。數(shù)據(jù)獨立性包括數(shù)據(jù)的邏輯獨立性和物理獨立性兩種。 2) 一個數(shù)據(jù)庫結(jié)構(gòu)從邏輯上可以劃分為三個層次:外部模式〔External Schema〕,概念模式〔Conceptual Schema〕和部模式〔Internal Schema〕,稱為數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)。數(shù)據(jù)庫的三級
15、結(jié)構(gòu)是依靠外模式/模式映像和模式/模式映像來聯(lián)系和互相轉(zhuǎn)換的。正是這兩層映像保證了數(shù)據(jù)庫系統(tǒng)中的數(shù)據(jù)具有較高的數(shù)據(jù)獨立性,其中外模式/模式映像保證邏輯獨立性,模式/模式映像保證物理獨立性。 ⒁數(shù)據(jù)庫系統(tǒng)的軟件包括哪些主要成份? 根本的系統(tǒng)軟件是操作系統(tǒng),其它任何軟件都必須在它的支持下工作。除操作系統(tǒng)之外,還必須配有數(shù)據(jù)庫管理系統(tǒng),沒有數(shù)據(jù)庫管理系統(tǒng)也就不能稱其為是數(shù)據(jù)庫系統(tǒng)。同時,為了開發(fā)數(shù)據(jù)庫應(yīng)用系統(tǒng),還需要有各種高級語言與其編譯系統(tǒng)。 ⒂什么是數(shù)據(jù)字典?它在數(shù)據(jù)庫中的作用是什么? 數(shù)據(jù)字典〔Data Dictionary〕是描述各級模式的信息,主要包括所有數(shù)據(jù)的結(jié)構(gòu)名、意義、描述定
16、義、存儲格式、完整性約束、使用權(quán)限等信息。由于數(shù)據(jù)字典包含了數(shù)據(jù)庫系統(tǒng)中的大量描述信息〔而不是用戶數(shù)據(jù)〕,因此也稱它為“描述信息庫〞。 數(shù)據(jù)字典是DBMS存取和管理數(shù)據(jù)的根本依據(jù),主要由系統(tǒng)管理和使用 ⒃ DBA的主要職責(zé)是什么? ①參與數(shù)據(jù)庫系統(tǒng)的設(shè)計與建立。 ②對系統(tǒng)的運行實行監(jiān)控。 ③定義數(shù)據(jù)的安全性要求和完整性約束條件。 ④負(fù)責(zé)數(shù)據(jù)庫性能的改良和數(shù)據(jù)庫的重組與重構(gòu)工作。 ⒄用戶訪問數(shù)據(jù)庫的過程。 1)承受應(yīng)用程序的數(shù)據(jù)請求 2)DBMS對用戶的操作請求進(jìn)展分析 3)數(shù)據(jù)庫管理系統(tǒng)要向操作系統(tǒng)發(fā)出操作請求 4)操作系統(tǒng)接到命令后,對數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)展處理,將結(jié)果送
17、到系統(tǒng)緩沖區(qū),并發(fā)出讀完標(biāo)志。 5)DBMS接到回答信號后,將緩沖區(qū)的數(shù)據(jù)經(jīng)過模式映射,變成用戶的邏輯記錄送到用戶工作區(qū),同時給用戶回答成功與否的信息。 ⒅關(guān)系數(shù)據(jù)庫完整性約束有哪些?舉例說明。 1)實體完整性約束:實體完整性約束是指任一關(guān)系中標(biāo)識屬性〔關(guān)鍵字〕的值,不能為NULL,否如此,無法識別關(guān)系中的元組。 2)參照完整性約束:參照完整性是不同關(guān)系間的一種約束,當(dāng)存在關(guān)系間的引用時,要求不能引用不存在的元組。假如屬性組F是關(guān)系R〔U〕的外關(guān)鍵字,并是關(guān)系S〔U〕的關(guān)鍵字(即F不是R(U)的關(guān)鍵字,而是S(U)的關(guān)鍵字,稱F是R〔U〕的外關(guān)鍵字),如此對于R〔U〕中的每個元組在屬性
18、組F上的值必須為:空值〔NULL〕或者等于S〔U〕中某個元組的關(guān)鍵字值。 3〕用戶定義完整性約束。如值的類型、寬度等。 ⒆有控制的冗余與無控制的冗余有什么區(qū)別? 有控制的冗余是指數(shù)據(jù)庫設(shè)計者在設(shè)計中為了提高操作效率有意保存的冗余數(shù)據(jù),無控制冗余是在數(shù)據(jù)庫設(shè)計中由于屬性間的依賴而存在的關(guān)聯(lián)數(shù)據(jù),兩者的區(qū)別是無控制冗余不是數(shù)據(jù)庫設(shè)計者所要保存的冗余數(shù)據(jù),因為它會帶來很多問題,使得存儲效率比擬低,而有控制冗余是數(shù)據(jù)庫設(shè)計者有意保存的數(shù)據(jù),主要是為了改善對數(shù)據(jù)庫的查詢效率。 ⒇簡述數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)和數(shù)據(jù)庫系統(tǒng)之間的關(guān)系 數(shù)據(jù)庫是指在計算機(jī)的存儲設(shè)備上合理存放、相關(guān)聯(lián)、有結(jié)構(gòu)的數(shù)據(jù)集合。
19、這個數(shù)據(jù)的集合由數(shù)據(jù)庫管理系統(tǒng)進(jìn)展建立和維護(hù),用戶訪問數(shù)據(jù)庫中的各種請求都是通過數(shù)據(jù)庫管理系統(tǒng)完成的。數(shù)據(jù)庫系統(tǒng)是在計算機(jī)系統(tǒng)中引進(jìn)數(shù)據(jù)庫和數(shù)據(jù)庫管理系統(tǒng)后的組成,沒有數(shù)據(jù)庫和數(shù)據(jù)庫管理系統(tǒng)不能夠構(gòu)成數(shù)據(jù)庫系統(tǒng)。 1.4 選擇題 ⑴在〔 〕中一個結(jié)點可以有多個雙親,結(jié)點之間可以有多種聯(lián)系。 A 網(wǎng)狀模型 B 關(guān)系模型 C 層次模型 D 以上都有 ⑵數(shù)據(jù)庫管理系統(tǒng)〔DBMS〕是〔 〕。 A 一個完整的數(shù)據(jù)庫應(yīng)用系統(tǒng) B 一組硬件 C一組軟件 D 既有硬件,也有軟件 ⑶用戶或應(yīng)用程序看到的那局部局部邏輯結(jié)構(gòu)
20、和特征的描述是〔 〕模式。 A 模式 B 物理模式 C 子模式 D 模式 ⑷要保證數(shù)據(jù)庫的邏輯數(shù)據(jù)獨立性,需要修改的是〔 〕。 A 模式與外模式之間的映射 B 模式與模式之間的映射 C 模式 D 三級模式 ⑸如下四項中,不屬于數(shù)據(jù)庫系統(tǒng)特點的是〔 〕。 A 數(shù)據(jù)共享 B 數(shù)據(jù)完整性 C 數(shù)據(jù)冗余度高 D 數(shù)據(jù)獨立性高 ⑹數(shù)據(jù)庫(DB),數(shù)據(jù)庫系統(tǒng)(DBS)和數(shù)據(jù)庫管理系統(tǒng)(DBMS)之間的關(guān)系是〔 〕。 A DBS包括DB和DBMS B DBM
21、S包括DB和DBS C DB包括DBS和DBMS D DBS就是DB,也就是DBMS ⑺數(shù)據(jù)庫系統(tǒng)與文件系統(tǒng)的主要區(qū)別是〔 〕。 A 數(shù)據(jù)庫系統(tǒng)復(fù)雜,而文件系統(tǒng)簡單 B 文件系統(tǒng)不能解決數(shù)據(jù)冗余和數(shù)據(jù)獨立性問題,而數(shù)據(jù)庫系統(tǒng)可以解決 C 文件系統(tǒng)只能管理程序文件,而數(shù)據(jù)庫系統(tǒng)能夠管理各種類型的文件 D 文件系統(tǒng)管理的數(shù)據(jù)量較少,而數(shù)據(jù)庫系統(tǒng)可以管理龐大的數(shù)據(jù)量。 ⑻數(shù)據(jù)庫的概念模型獨立于〔 〕。 A具體的機(jī)器和DBMS B E-R圖 C 信息世界 D 現(xiàn)實世界 ⑼在數(shù)據(jù)庫中存儲的是〔 〕。 A 數(shù)據(jù) B 數(shù)據(jù)模型 C 數(shù)據(jù)以與數(shù)據(jù)之間
22、的聯(lián)系 D 信息 ⑽在數(shù)據(jù)庫中,數(shù)據(jù)的物理獨立性是指〔 〕。 A 數(shù)據(jù)庫與數(shù)據(jù)庫管理系統(tǒng)的相互獨立 B 用戶程序與DBMS的相互獨立 C 用戶的應(yīng)用程序與存儲在磁盤上的數(shù)據(jù)庫中的數(shù)據(jù)是相互獨立的 D 應(yīng)用程序與數(shù)據(jù)庫中數(shù)據(jù)的邏輯結(jié)構(gòu)相互獨立 ⑾數(shù)據(jù)庫的特點之一是數(shù)據(jù)的共享,嚴(yán)格地講,這里的數(shù)據(jù)共享是指〔 〕。 A 同一應(yīng)用中的多個程序共享一個數(shù)據(jù)集合 B 多個用戶、同一種語言共享數(shù)據(jù) C 多個用戶共享一個數(shù)據(jù)文件 D 多種應(yīng)用、多種語言、多個用戶相互覆蓋地使用數(shù)據(jù)集合 ⑿在數(shù)據(jù)庫技術(shù)中,為提高數(shù)據(jù)庫的邏輯獨立性和物理獨立性,數(shù)據(jù)庫的結(jié)構(gòu)被劃分成用戶級、〔 〕和存儲級三
23、個層次 A 管理員級 B 外部級 C 概念級 D 部級 ⒀在數(shù)據(jù)庫中,產(chǎn)生數(shù)據(jù)不一致的根本原因是〔 〕。 A 數(shù)據(jù)存儲量太大 B 沒有嚴(yán)格保護(hù)數(shù)據(jù) C未對數(shù)據(jù)進(jìn)展完整性控制 D 數(shù)據(jù)冗余 ⒁數(shù)據(jù)庫具有①、最小的②和較高的程序與數(shù)據(jù)③。 ① A 程序結(jié)構(gòu)化 B 數(shù)據(jù)結(jié)構(gòu)化 C 程序標(biāo)準(zhǔn)化 D 數(shù)據(jù)模塊化 ② A 冗余度 B 存儲量 C 完整性 D 有效性 ③ A 可靠性 B 完整性 C 獨立性 D 一致性 ⒂在數(shù)據(jù)庫的三級模式結(jié)構(gòu)中,描述數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的是〔 〕。 A 外模式 B
24、模式 C 存儲模式 D 模式 1-5:A, C, C, A, C 6-10:A, B, A, C, C 11-15:D,C, D,BAC,D 1.5 對于工程碩士的管理需要掌握的信息有:學(xué)生現(xiàn)在的工作單位、職務(wù)、簡歷情況,其中簡歷情況包括開始時間、終止時間、單位、擔(dān)任職務(wù)、證明人;學(xué)生目前在校情況,包括學(xué)生的學(xué)號、所在學(xué)院、所學(xué)專業(yè)、入學(xué)時間、導(dǎo)師;學(xué)生在校所學(xué)的課程號、課程名、學(xué)時、授課教師與成績;學(xué)院包括學(xué)院代號、學(xué)院名稱、院長;導(dǎo)師包括導(dǎo)師職工編號、、出生日期、職稱、研究方向。 要求: ⑴確定實體與實體型屬性; ⑵找出實體間的聯(lián)系; ⑶畫出E-R圖。
25、 (1) 學(xué)生:學(xué)號,,專業(yè),學(xué)院,入學(xué)時間,工作單位,導(dǎo)師號,建立號,職務(wù) 簡歷:簡歷號,開始時間,完畢時間,證明人,單位,擔(dān)任職務(wù) 課程:課程號,學(xué)時,課程名,授課教師 學(xué)院:學(xué)院代號,學(xué)院名稱,院長 導(dǎo)師:導(dǎo)師號,,出生日期,研究方向 (2) 學(xué)生-簡歷:1:n 學(xué)生-學(xué)院:n:1 學(xué)生-導(dǎo)師:n:1 學(xué)生-課程:n:m 導(dǎo)師-學(xué)院:n:1 (3) 圖1 學(xué)生實體與其屬性 圖2 簡歷實體與其屬性 圖3 課程實體與其屬性 圖4 學(xué)院實體與其屬性 圖5 導(dǎo)師實體與其屬性 圖6 實體聯(lián)系圖
26、 第二章 2.1 試述關(guān)系模型的3個組成局部 答:關(guān)系模型由關(guān)系數(shù)據(jù)結(jié)構(gòu)、關(guān)系操作和關(guān)系完整性約束三局部組成。 2.2 一個關(guān)系模式能否沒有關(guān)鍵字?為什么? 答:不可以沒有關(guān)鍵字,因為關(guān)鍵字是元組的唯一標(biāo)志,如果沒有關(guān)鍵字如此無法唯一標(biāo)識一個元組。 2.3 試述關(guān)系模型的完整性規(guī)如此。在參照完整性中,為什么外部關(guān)鍵字屬性的值也可以為空?什么情況下才可以為空? 答:〔1〕實體完整性規(guī)如此:假如屬性A是根本關(guān)系R的主屬性,如此屬性A不能取空值。 〔2〕參照完整性規(guī)如此:假如屬性(或?qū)傩越M)F是根本關(guān)系R的外碼,它與根本關(guān)系S的主碼Ks相對應(yīng)(根本關(guān)系R和
27、S不一定是不同的關(guān)系),如此對于R中每個元組在F上的值必須為:或者取空值(F的每個屬性值均為空值);或者等于S中某個元組的主碼值。即屬性F本身不是主屬性,如此可以取空值,否如此不能取空值。 當(dāng)外部關(guān)鍵字F對應(yīng)的主鍵Ks值為空值時,說明F暫時沒有賦值,此時F值必須取空值。 n行、m列的二維表〔其中沒有兩行或兩列全同〕,將行或列交換后,能導(dǎo)出多少個不同的表? 答:1個 2.5 答: (1) 最小個數(shù)為:取m,n中的大者;最大個數(shù)為:m+n (2) 最小個數(shù)為:0;最大個數(shù)為:取m,n中的小者 (3) 最小個數(shù)為:0;最大個數(shù)為:m*n (4) 最小個數(shù)為:
28、0;最大個數(shù)為:n 2.6 答: RèS= {(3,6,7), (2,5,7), (7,2,3), (4,4,3), (3,4,5)} R-S= {(3,6,7), (2,5,7), (4,4,3) } R?S= {(7,2,3)} R×S= {(3,6,7,3,4,5), (3,6,7,7,2,3), (2,5,7,3,4,5), (2,5,7,7,2,3), (7,2,3,7,2,3), (7,2,3,3,4,5), (4,4,3,3,4,5), (4,4,3,7,2,3) } ?3,2(s)= {(5,4),(3,2)} sB<‘5’(R)= {(7
29、,2,3),( 4,4,3)} 2.7 答:該表達(dá)式的意思是:從關(guān)系R中選擇元組,該元組滿足:第1分量值或第2分量值至少有一個不等于其他某元組,即選擇與其他元組不完全一樣的元組。由于關(guān)系模型的性質(zhì)要求,關(guān)系中不能夠有重復(fù)的元組,因此上述條件一定滿足,所以,這個表達(dá)式結(jié)果就是R。 2.8 〔1〕從R和S的笛卡爾積中選擇滿足如下條件的元組: 第2分量與第4分量相等,或第3分量和第4分量相等,并取第1分量和第5分量構(gòu)成新的關(guān)系。 〔2〕元組表達(dá)式 〔3〕域表達(dá)式 〔1〕漢語表達(dá)式:選擇R關(guān)系中元組第2分量值不等于S關(guān)系中某元組第1分量值的元組。 〔2〕關(guān)系代數(shù)表達(dá)式
30、: 〔3〕域表達(dá)式: 〔1〕漢語表達(dá)式:選擇R中元組第1分量值與第2分量值互換后仍存在于R中的元組。 〔2〕關(guān)系代數(shù)表達(dá)式: 〔3〕域表達(dá)式: (1) (2) (3) (4) 設(shè)有關(guān)系:S(SNO,SNAME,AGE,SEX,CDEPT); SC(SNO,O,GRADE); C(O,AME,CDEPT,TNAME); 用關(guān)系代數(shù)表示 (1) 教師所教授課程的課程號、課程名 ∏O,AME〔σTNAME=‘’〔C〕〕 (2) 檢索年齡大于23的男學(xué)生的學(xué)號和 ∏SNO,SNAME〔σAGE>23∩SEX=‘男’ 〔S〕 〕 (3) 檢索學(xué)號為
31、‘090111’學(xué)生所學(xué)課程的課程名與任課教師名 ∏AME,TNAME〔C ∞σSNO=‘090111’SC 〕 (4) 檢索至少選修教師所教授課程中一門課的女學(xué)生 ∏SNAME〔σTNAME=‘’〔C〕 ∞ SC∞σSEX=‘女’〔S〕〕 (5) 檢索‘王一寧’同學(xué)不學(xué)課程的課程號 ∏O〔C〕 - ∏O〔σSNAME=‘王一寧’〔S〕∞ SC〕 (6) 檢索至少選了兩門課的學(xué)生學(xué)號 ∏SNO〔σ[1]=[4] ∩ [2]<>[5]( SC × SC)〕 (7) 檢索全部學(xué)生都選修的課程的課程號和課程名 ∏O,AME〔C ∞〔∏SNO,O〔SC〕÷∏SNO〔S〕〕〕 (8)
32、 檢索選修課程包括教師所教授課程的學(xué)生 ∏SNAME〔SC∞σTNAME=‘’〔C〕〕 (1)教師所教授課程的課程號、課程名 {t|($u)(C(u)ùt[1]=u[1]ù t[2]=u[2]ù C[3]=‘’)} (2)檢索年齡大于23的男學(xué)生的學(xué)號和 {t|($u)(S(u)ùt[1]=u[1]ù t[2]=u[2]ù u[3]> 23 ù u[4]= ‘男’)} (3)檢索學(xué)號為‘090111’學(xué)生所學(xué)課程的課程名與任課教師名 {t|($u)($v)(C(v)ùSC(u)ùv[1]=u[2]ùt[1]=v[2] ùt[2]=v[3]ùv[1]= ‘090111’)
33、} (4)檢索至少選修教師所教授課程中一門課的女學(xué)生 {t|($u)($v)($w)(S(u)ùSC(v)ùC(w)ù u[4]= ‘女’ùv[1]=u[1] ù v[2]=w[1] ùw[3]=‘’ùt[1]=u[2])} (5)檢索‘王一寧’同學(xué)不學(xué)課程的課程號 (6)檢索至少選了兩門課的學(xué)生學(xué)號 (7)檢索全部學(xué)生都選修的課程的課程號和課程名 (8)檢索選修課程包括教師所教授課程的學(xué)生 (1)πO,TNAME 〔σSDEPT=‘計算機(jī)’ (S) ∞SC∞σCDEPT=‘自動化’(C) 〕
34、 (2) πO,TNAME 〔σSDEPT=‘計算機(jī)’∧σCDEPT=‘自動化’∧∧SC.O=C.O 〔S× SC × C〕〕 (3)ΠO,TNAME σSDEPT=‘計算機(jī)’∧ σCDEPT=‘自動化’ ∧∧ × C × S SC ΠO,TNAME σ × σ σCDEPT=‘自動化’ × σSDEPT=‘計算機(jī)’ SC S C ΠO,TNAME σ Π × σ σCDEPT=‘自動化’ × σSDEPT=‘計算機(jī)’ SC S C ΠO,TNAME σ
35、 × Π Π O,TNAME σ σCDEPT=‘自動化’ C σSDEPT=‘計算機(jī)’ SC S C ΠO,TNAME σ × Π σ × ΠSNO σSDEPT=‘計算機(jī)’ S ΠSNO, O C Π O,TNAME σCDEPT=‘自動化’ C 在關(guān)系代數(shù)運算中,各個運算所費時間和空間是不一樣的,如何安排假如干關(guān)系的運算操作步驟,直接影響到整個操作所需要的時間和空間。對關(guān)系代數(shù)表達(dá)式進(jìn)展優(yōu)化,可以提高系統(tǒng)的操作效率,達(dá)到執(zhí)行過程既省時間又省空間的目的。
36、 第三章 3-1解釋如下術(shù)語: 根本表 視圖 單表查詢 連接查詢 嵌套查詢 交互式SQL 嵌入式SQL 宿主語言 答: 〔1〕根本表:簡稱基表。是數(shù)據(jù)庫中實際存在的表,在SQL中一個關(guān)系對應(yīng)于一個表。 〔2〕視圖:SQL用視圖概念支持非標(biāo)準(zhǔn)的外模式概念。視圖是從一個或幾個基表導(dǎo)出的表,雖然它也是關(guān)系形式,但它本身不實際存儲在數(shù)據(jù)庫中,只存放對視圖的定義信息〔沒有對應(yīng)的數(shù)據(jù)〕。因此,視圖是一個虛表〔Virtual Tabl
37、e〕或虛關(guān)系,而基表是一種實關(guān)系〔Practical Relation〕。 〔3〕單表查詢:只涉與到一個關(guān)系的查詢。 〔4〕連接查詢:同時涉與兩個以上的表的查詢。 〔5〕嵌套查詢:將一個查詢塊嵌套在另一個查詢塊的WHERE子句或HAVING條件中的查詢。 〔6〕交互式SQL:做為獨立語言由用戶在交互環(huán)境下使用的SQL語言。 〔7〕嵌入式SQL:將SQL語言嵌入到某種高級語言中使用,利用高級語言的過程性結(jié)構(gòu)來彌補(bǔ)SQL語言在實現(xiàn)復(fù)雜應(yīng)用方面的不足的SQL語言。 〔8〕宿主語言:嵌入SQL的高級語言稱為主語言或宿主語言。 3-2試述SQL語言的特點 答:1.綜合統(tǒng)一
38、 ` 3-3試述SQL體系結(jié)構(gòu)和關(guān)系數(shù)據(jù)庫模式之間的關(guān)系 答: SQL語言支持關(guān)系數(shù)據(jù)庫體系結(jié)構(gòu),即外模式、模式和模式,利用SQL語言可以實現(xiàn)對三級模式的定義、修改和數(shù)據(jù)的操縱功能,在此根底上形成了SQL體系結(jié)構(gòu);在SQL體系結(jié)構(gòu)中的視圖對應(yīng)了關(guān)系數(shù)據(jù)模式的外模式,根本表對應(yīng)了關(guān)系數(shù)據(jù)模式的模式,存儲文件對應(yīng)了關(guān)系數(shù)據(jù)模式的模式。 3-4 SQL是如何實現(xiàn)實體完整性、參照完整性和用戶定義完整性的? 答: 實體完整性簡單的說,就是將表中的每一行看作一個實體。實體完整性要求表的標(biāo)示符列或主鍵的完整性??梢酝ㄟ^建立唯一索引、PRIMARY KEY約束、UNIQUE約束,以與列的
39、IDENTITY屬性來實施實體完整性。 參照完整性維持被參照表和參照表之間的數(shù)據(jù)一致性,他通過主鍵〔PRIMARY KEY〕約束和外鍵〔FOREIGN KEY〕約束來實現(xiàn)。引用完整性確保鍵值在所有表中一致。這樣的一致性要求不能引用不存在的值,如果鍵值更改了,那么在整個數(shù)據(jù)庫中,對該鍵值的所有引用要進(jìn)展一致的更改。在被參照表中,當(dāng)其主鍵值被其他表所參照時,該行不能被刪除也不允許改變。在參照表中,不允許參照不存在的主鍵值。 用戶定義完整性使得可以定義不屬于其它任何完整性分類的特定業(yè)務(wù)規(guī)如此。所有的完整性類型都支持用戶定義完整性。 3-5討論當(dāng)對一個視圖進(jìn)展更新的時候可能會出現(xiàn)什么樣的問題
40、? 答: 1) 假如視圖的屬性來自屬性表達(dá)式或常數(shù),如此不允許對視圖執(zhí)行INSERT和UPDATE操作,但允許執(zhí)行DELETE操作。 2) 假如視圖的屬性來自庫函數(shù),如此不允許對此視圖更新。 3) 假如視圖定義中有GROUP BY子句,如此不允許對此視圖更新。 4) 假如視圖定義中有DISTINCT任選項,如此不允許對此視圖更新。 5) 假如視圖定義中有嵌套查詢,并且嵌套查詢的FROM子句涉與導(dǎo)出該視圖的根本表,如此不允許對此視圖更新。 6) 假如視圖由兩個以上的根本表導(dǎo)出,如此不允許對此視圖更新。 7) 如果在一個不允許更新的視圖上再定義一個視圖,這種二次視圖是不允許更新的。
41、 3-6設(shè)有兩個根本表R(A,B,C) 和 S(A,B,C)試用SQL查詢語句表達(dá)如下關(guān)系代數(shù)表達(dá)式: ⑴ R∩S ⑵ R-S ⑶R∪S ⑷ R×S (1) (select * from R) INTERSECT (select * from S) (2) (select * from R) EXCEPT (select * from S) (3) (select * from R) UNION (select * from S) (4) select * from R,S 3-7對于教學(xué)數(shù)據(jù)庫的三個根本表: S(學(xué)號, ,年齡,性別) SC(學(xué)號 ,課程號,
42、成績) C(課程號 ,課程名,任課教師〕 試用SQL語句表達(dá)如下查詢: ⑴ 查詢“某〞教師所授課程的課程號和課程名。 ⑵ 查詢年齡大于23歲的男同學(xué)的學(xué)號和。 ⑶ 查詢學(xué)號為S3的學(xué)生所學(xué)課程的課程號、課程名和任課教師。 ⑷ 查詢“小飛〞沒有選修的課程號和課程名。 ⑸ 查詢至少選修了3門課程的學(xué)生的學(xué)號和。 ⑹ 查詢?nèi)繉W(xué)生都選修了的課程編號和課程名稱。 ⑺ 在SC中刪除尚無成績的選課元組。 ⑻ 把“高等數(shù)學(xué)〞課的所有不與格成績都改為60。 ⑼ 把低于總評均成績的女同學(xué)的成績提高5%。 ⑽ 向C中插入元組〔‘C8’,‘VC++’,‘王昆’〕。 3-7 (1) 查詢“
43、某〞教師所授課程的課程號和課程名; SELECT課程號, 課程名 FROM C WHERE任課教師LIKE '*' (2) 查詢年齡大于23歲的男同學(xué)的學(xué)號和; SELECT 學(xué)號, FROM S WHERE 年齡>23 AND 性別='男' (3) 查詢學(xué)號為S3的學(xué)生所學(xué)課程和課程號,課程名和任課教師 SELECT C.課程號, 課程名, 任課教師 FROM C, SC WHERE SC.學(xué)號='S (4) 查詢“小飛〞同學(xué)沒有選修的課程的課程號和課程名; FROM C WHERE 課程號 NOT IN (SELECT 課程號 FROM SC
44、 WHERE 學(xué)號 IN (SELECT 學(xué)號 FROM S WHERE ='小飛')); 或者 SELECT * FROM C WHERE NOT EXISTS FROM SC,S WHERE SC.課程號=C.課程號 AND S.學(xué)號=SC.學(xué)號 AND S.='小飛') 或者 SELECT * FROM C WHERE 課程號 NOT IN (SELECT 課程號 FROM SC,S WHERE S.學(xué)號=SC.學(xué)號 AND S.='小飛') (5) 查詢至少選修了3門課程的學(xué)生的學(xué)號和; SELECT 學(xué)號, F
45、ROM S WHERE 學(xué)號 IN (SELECT 學(xué)號 FROM SC GROUP BY 學(xué)號 HAVING COUNT (課程號)>=3) (6) 查詢?nèi)繉W(xué)生都選修了的課程號和課程名; SELECT 課程號,課程名 FROM C WHERE NOT EXISTS (SELECT 學(xué)號 FROM S WHERE NOT EXISTS (SELECT 學(xué)號 FROM SC WHERE SC.課程號=C.課程號 AND S.學(xué)號=SC.學(xué)號)) 或者 SELECT 課程號, 課程名 FROM C WHERE NOT
46、 EXISTS ((SELECT 學(xué)號 FROM S) EXCEPT (SELECT 學(xué)號 FROM SC WHERE SC.課程號=C.課程號)) (7) 在SC表中刪除無成績的選課紀(jì)錄; DELETE * FROM SC WHERE GRADE is null; (8) 把“高等數(shù)學(xué)〞的所有不與格成績都改為60分; UPDATE SC SET 成績 = 60 WHERE GRADE< 60 AND 課程號 = (SELECT 課程號 FROM C WHERE 課程名='高等數(shù)學(xué)') (9) 把低于總平均成績的女同學(xué)的成績提高5% UPD
47、ATE sc SET 成績 = 成績*(1+0.05) WHERE 學(xué)號 in (select 學(xué)號 from s where 性別='女') and 成績 < (select avg(成績) from sc); (10) 向C中插入元組〔“C8〞,“VC++〞,“王昆〞〕 INSERT INTO c VALUES ('C8', 'VC++', '王昆'); 3-8圖3-2中顯示的數(shù)據(jù)庫模式Library,用來記錄書籍、借書人和書籍借出的情況,參照完整性在圖中用有向弧來表示,請用SQL語言建立圖中的關(guān)系模式,并完成如下操作: 圖3-2 Library數(shù)據(jù)庫模式
48、 ⑴ 查詢“高等教育〞出版的所有圖書名稱和編號; ⑵ 查詢所有作者是“郭雨辰〞的圖書的編號和名稱; ⑶ 查詢“明〞借過的所有圖書的名稱; ⑷ 查詢“明〞從2008年1月1日到2009年1月1日期間借過的圖書名稱; ⑸ 列出從2008年1月1日到2009年1月1日期間沒有被人借過的圖書名稱和編號; ⑹ 列出從2008年1月1日到2009年1月1日期間借出次數(shù)最多的10本圖書名稱; ⑺ 將“高等教育〞的改為“010-64054588〞; 3-8 (1) SELECT BookID , Title FROM Book WHERE PublishName=’高等教育’ (
49、2) SELECT BookID, Title FROM BookID, Book WHERE Book.BookID=Author.BookID AND Author=’郭雨辰’ (3) SELECT Title FROM Book, Borrow, Borrower WHERE Borrow.CardID=Borrower.CardID AND Borrow.BookID=Book.BookID AND Borrower.Name=’明’ (4) SELECT Title FROM Book, Borrow, Borrower WHERE Borrow.Car
50、dID=Borrower.CardID AND Borrow. BookID=Book.BookID AND Borrower.Name=’明’ (5) SELECT Title FROM Book WHERE NOT EXISTS (SELECT * FROM Borrow,Book WHERE Borrow. BookID=Book.BookID AND Dateout Between 2008-1-1 AND 2009-1-1) (6) SELECT top 10 Title FROM Book, Borrow W
51、HERE Borrow. BookID=Book.BookID AND Dateout Between 2008-1-1 AND 2009-1-1 ORDER BY Book.BookID DESC (7) UPDATE Publisher SET Phone=’8’ WHERE Name=’高等教育’ 3-9 針對3.8建立的表,用SQL語言完成如下操作: ⑴ 把對所有表的INSERT權(quán)限授予“麗〞,并允許她將此權(quán)限授予其他用戶; Grant INSERT to ‘麗’ with grant option ⑵ 把查詢和修改BORROWER的權(quán)限受給用戶“王偉〞
52、。 Grant select, update on BORROWER to ‘王偉’ 習(xí)題四 4.1 理解并給出如下術(shù)語的定義:函數(shù)依賴 局部函數(shù)依賴 完全函數(shù)依賴 傳遞函數(shù)依賴 候選碼 主碼 外碼 全碼 主屬性 非主屬性1NF 2NF 3NF BF 4NF 函數(shù)依賴集閉包 屬性集閉包 函數(shù)依賴集等價 最小函數(shù)依賴集 無損連接 函數(shù)依賴保持 設(shè)R(U)是屬性集U上的關(guān)系模式。假如對于R(U)的任意一個可能的關(guān)系r,X,Y是屬性集U的任意子集,當(dāng)且僅當(dāng)對r中任意一個給定的X的
53、屬性值,r中都只存在惟一的Y屬性值與之對應(yīng)。也就是說,如果X相等,就有Y也相等,如此稱Y函數(shù)依賴于X或X函數(shù)確定Y,記作X→Y。 在R(U)中,如果,并且對于X的一個真子集,有成立,如此稱對局部函數(shù)依賴〔Partial Functional Dependency〕,記作。 在R(U)中,如果,并且對于X的任何一個真子集,都有成立,如此稱對完全函數(shù)依賴〔Full Functional Dependency〕,記作。 在R(U)中,如果,,,如此稱Z對X傳遞函數(shù)依賴〔Transitive Functional Dependency〕,記做 設(shè)K為R中的屬性或?qū)傩越M,假如,如此
54、K為R的候選碼。假如候選碼多于一個,如此選定其中的一個為主碼。包含在任何一個候選碼中的屬性,叫做主屬性。不包含在任何候選碼中的屬性稱為非主屬性。最簡單的情況,碼只包含單個屬性;最復(fù)雜的情況是所有屬性集組合成碼,稱為全碼。關(guān)系模式R中屬性或?qū)傩越MX并非R的主碼,但X是另一個關(guān)系模式的主碼,如此稱X是R的外碼。 設(shè)R是一個關(guān)系模式,如果R中的每一個屬性A的屬性名和屬性值都是不可再分的,如此稱R屬于第一式,記作:R∈1NF。 假如R1NF,且每一個非主屬性都完全函數(shù)依賴于碼,如此R2NF。 關(guān)系模式R(U,F)中假如不存在這樣的碼X,屬性組Y與非主屬性組Z〔〕,使得,,成立,如此稱R(U,F)
55、3NF。 關(guān)系模式R(U,F)1NF,假如每一個決定因素都含有碼,如此RBF。 關(guān)系模式R(U,F)∈1NF,假如對R的每個非平凡多值依賴X→→Y〔〕,X都包含碼,如此稱R(U)滿足第四式,記為R∈4NF。 稱所有被一個函數(shù)依賴集F邏輯蘊涵的那些函數(shù)依賴的集合為F的閉包〔Closure〕,記為F+。 設(shè)有關(guān)系模式R(U),F(xiàn)是U上的一個函數(shù)依賴集,,定義 XF+={A|能由F根據(jù)Armstrong 公理導(dǎo)出}, 并稱XF+為屬性集X關(guān)于函數(shù)依賴集F的閉包。 如果函數(shù)依賴集F滿足如下條件,如此稱F是一個極小函數(shù)依賴集或最小覆蓋。 ①F中每一個函數(shù)依賴的右部都是單個屬性。 ② 對
56、F中任一函數(shù)依賴X→A,F(xiàn)-{X→A}都不與F等價。 ③ 對于F中的任一函數(shù)依賴X→A,{F-{X→A}}∪{Z-A}都不與F等價,其中Z為X的任一子集。 如果函數(shù)依賴集F與某個最小依賴集等價,如此稱是F的最小覆蓋或是F的最小依賴集。 設(shè)R是一個關(guān)系模式,F(xiàn)是R上的一個函數(shù)依賴集,R分解為關(guān)系模式的集合={R1(U1), R2(U2), …, Rn(Un)}。如果對于R的滿足F的每一個關(guān)系r,都有,如此稱是一個無損連接的分解〔lossingless jion deposition〕 假如F+=〔〕+,如此R〔U,F(xiàn)〕的分解={}保持函數(shù)依賴。 4.2 設(shè)有關(guān)系模式R〔A,B,C,
57、D,E,P,G,H〕,R的函數(shù)依賴集F={AB→CE,A→C ,GP→B ,EP→A ,CDE→P ,HB→P ,D→HG ,ABC→PG},求D+ 【參考答案】 D+={DHG} 4.3 證明函數(shù)依賴集F={A→BC,A→D,CD→E}和函數(shù)依賴集G={A→BCE,A→ABD,CD→E}的等價性 【參考答案】 ∵A→BC,A→D,CD→E ,∴A→BCE,A→ABD,有 ∵A→BCE,A→ABD ,∴A→BC,A→D,CD→E ,有 所以F和G等價。 4.4 設(shè)關(guān)系模式R〔ABCD〕,F(xiàn)是R上成立的函數(shù)依賴集,F(xiàn)={A→B,C→B},如此相對于F,試寫出關(guān)系模式R的候
58、選碼,并說明理由 【參考答案】 關(guān)系模式R的候選碼為ACD 在關(guān)系F中B只出現(xiàn)在右邊,所以B一定不是候選碼 在關(guān)系F中D沒有出現(xiàn)D必然出現(xiàn)在候選碼中 在關(guān)系F中AC出現(xiàn)在左邊 A→B,C→C,A→A 所以A能推出ABC,因此候選碼是ACD 4.5 設(shè)有關(guān)系模式R〔A,B,C,D,E〕,R的函數(shù)依賴集F={AB→D,B→CD,DE→B,C→D,D→A} ⑴ 計算〔AB〕+,〔AC〕+,〔DE〕+ ⑵求R的所有候選碼 ⑶ 求F的最小覆蓋 【參考答案】 ⑴〔AB〕+={ABCD} 〔AC〕+={ACD} 〔DE〕+={ABCDE} ⑵ R屬性:E, LR屬性:
59、ABCD (AE) +={AE} (BE) +={ABCDE} (CE) +={ABCDE} (DE) +={ABCDE} R的候選碼為:BE, CE, DE ⑶ 右部屬性單一化:F1={ AB→D,B→C,B→D,DE→B,C→D,D→A } 去掉多余的函數(shù)依賴:F2={B→C, DE→B,C→D,D→A} 去掉冗余的屬性:沒有冗余屬性 所以F的最小覆蓋Fmin=F2={B→C, DE→B,C→D,D→A} 4.6 設(shè)有關(guān)系模式R〔A,B,C,D〕,R的函數(shù)依賴集F={A→C,C→A,B→AC,D→AC,BD→A},求F的最小覆蓋 【參考答案】 第一步:將F的所有
60、函數(shù)依賴的右部都分解成單一屬性: F1={ A→C,C→A,B→A ,B→C,D→A,D→C,BD→A } 第二步:去掉冗余的函數(shù)依賴: 考察A→C,令G={C→A,B→A ,B→C,D→A,D→C,BD→A},A+G={A} 因為C A+G,所以A→C不冗余; 考察C→A,令G={A→C, B→A ,B→C,D→A,D→C,BD→A},C+G={C} 因為A C+G,所以C→A不冗余; 考察B→A,令G={A→C,C→A,B→C,D→A,D→C,BD→A},B+G={ABC} 因為A B+G,所以B→A冗余,從F1中刪除B→A,F(xiàn)2={A→C,C→A,B→C,D→A,D→C
61、,BD→A}; 考察B→C,令G={A→C,C→A,D→A,D→C,BD→A},B+G={B} 因為C B+G,所以B→C不冗余; 考察D→A,令G={A→C,C→A,B→C, D→C,BD→A},D+G={ACD} 因為A D+G,所以D→A冗余,從F2中刪除D→A,F(xiàn)3={A→C,C→A,B→C, D→C,BD→A}; 考察D→C,令G={A→C,C→A,B→C,BD→A},D+G={D} 因為C D+G,所以D→C不冗余; 考察BD→A,令G={A→C,C→A,B→C, D→C},(BD)+G={ABCD} 因為A (BD)+G,所以BD→A冗余,從F3中刪除BD→A,F(xiàn)
62、4={A→C,C→A,B→C, D→C}; 第三步:去掉冗余的屬性: 由于左邊都是單屬性,所以: Fm=F4={A→C,C→A,B→C, D→C}; 但是結(jié)果不唯一。 4.7 設(shè)關(guān)系模式R〔ABC〕,F(xiàn)是R上成立的FD集,F(xiàn)={C→A,B→A},分解ρ={AB,BC},判斷ρ是否具有函數(shù)依賴保持性? 【參考答案】 F1 == (B→A) F2 = G = F1∪F2 = { B→A } F={ C→A,B→A } 顯然,G必定包含于F+。而F不包含于G+。 因此,有G+≠F+,即 ∴ρ不具有函數(shù)依賴保持性。 4.8 設(shè)關(guān)系模式R〔ABC〕,F(xiàn)是R上成立的FD
63、集,F(xiàn)={C→A,B→C},ρ={AB,AC},判斷ρ是否具有“無損連接性〞和“函數(shù)依賴保持〞性 【參考答案】 考察“無損連接性〞: ①首先構(gòu)造初始表,結(jié)構(gòu)如表1 表1 初始表 Aj Ri A B C AB a1 a2 b13 AC a1 b23 a3 ②修改表 逐一考察F中的函數(shù)依賴: a) C→A,表的結(jié)構(gòu)不變; b) B→C,表的結(jié)構(gòu)不變; 此時,對F中的每個函數(shù)依賴,表的結(jié)構(gòu)都不再變化。又因為表中沒有出現(xiàn)a1,a2,a3的行,所以該分解不具有無損連接性。 考察“函數(shù)依賴保持〞 F1 == (B→A) F2 =( C→A) G = F1
64、∪F2 = { B→A ,C→A } F={ C→A,B→C } 顯然,G必定包含于F+。而F不包含于G+。 因此,有G+≠F+,即 ∴ρ不具有函數(shù)依賴保持性。 4.9 設(shè)關(guān)系模式R〔ABCD〕,在R上有5個相應(yīng)的FD集與分解: ⑴ F={B→C,D→A},ρ={AD,BC} ⑵ F={AB→C,C→A,C→D},ρ={ACD,BC} ⑶ F={A→BC,C→AD},ρ={ABC,AD} ⑷ F={A→B,B→C,C→D},ρ={AB,ACD} ⑸ F={A→B,B→C,C→D},ρ={AB,AD,CD} 試對上述5中情況分別回答如下問題: ⑴ 確定R的候選碼和主
65、碼。 ⑵ 是否為無損分解? ⑶ 是否函數(shù)依賴保持? ⑷ 確定ρ中每一模式的式級別。 【參考答案】 分解⑴ F={B→C,D→A},ρ={AD,BC} A) 〔BD〕+={ABCD} BD是候選碼,也是主碼 B) 首先構(gòu)造初始表,結(jié)構(gòu)如表2 表2 初始表 Aj Ri A B C D AD a1 b12 b13 a4 BC b21 a2 a3 b24 修改表 逐一考察F中的函數(shù)依賴: a) B→C,表的結(jié)構(gòu)不變; b) D→A,表的結(jié)構(gòu)不變; 此時,對F中的每個函數(shù)依賴,表的結(jié)構(gòu)都不再變化。又因為表中沒有出現(xiàn)a1,a2,a3,a4的行,所以
66、該分解不具有無損連接性。 C) F1 == (B→C) F2 =( D→A) G = F1∪F2 = { B→C ,D→A } F={ B→C,D→A} 顯然,G必定包含于F+。而F包含于G+。 因此,有G+=F+,即 ∴ρ具有函數(shù)依賴保持性。 D) 模式ad(A,D) BF,模式bc(B,C) BF 分解⑵ F={AB→C,C→A,C→D},ρ={ACD,BC} A) L屬性B,LR屬性AC ,R屬性D (B)+ = {B} (AB)+ = {ABCD} 所以AB是候選碼 (BC)+ = {ABCD} 所以BC是候選碼 選擇AB做為主碼 B) 構(gòu)造初始表 Aj Ri A B C D ACD a1 b12 a3 a4 BC b21 a2 a3 b24 修改表 Aj Ri A B C D ACD a1 b12 a3 a4 BC a1 a2 a3 a4 因為表中出現(xiàn)a1,a2,a3,a4的行,所以該分解具有無損連接性。 C) F1 == (C→A,C→D) F2 = G = F1∪F2
- 溫馨提示:
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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 6.煤礦安全生產(chǎn)科普知識競賽題含答案
- 2.煤礦爆破工技能鑒定試題含答案
- 3.爆破工培訓(xùn)考試試題含答案
- 2.煤礦安全監(jiān)察人員模擬考試題庫試卷含答案
- 3.金屬非金屬礦山安全管理人員(地下礦山)安全生產(chǎn)模擬考試題庫試卷含答案
- 4.煤礦特種作業(yè)人員井下電鉗工模擬考試題庫試卷含答案
- 1 煤礦安全生產(chǎn)及管理知識測試題庫及答案
- 2 各種煤礦安全考試試題含答案
- 1 煤礦安全檢查考試題
- 1 井下放炮員練習(xí)題含答案
- 2煤礦安全監(jiān)測工種技術(shù)比武題庫含解析
- 1 礦山應(yīng)急救援安全知識競賽試題
- 1 礦井泵工考試練習(xí)題含答案
- 2煤礦爆破工考試復(fù)習(xí)題含答案
- 1 各種煤礦安全考試試題含答案