《數(shù)據(jù)庫原理與應用》課后習題答案_第1頁
《數(shù)據(jù)庫原理與應用》課后習題答案_第2頁
《數(shù)據(jù)庫原理與應用》課后習題答案_第3頁
《數(shù)據(jù)庫原理與應用》課后習題答案_第4頁
《數(shù)據(jù)庫原理與應用》課后習題答案_第5頁
已閱讀5頁,還剩31頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第一章

1.1名詞解釋

數(shù)據(jù)庫(DB)數(shù)據(jù)庫系統(tǒng)(DBS)數(shù)據(jù)庫管理系統(tǒng)(DBMS)

實體實體集屬性關鍵字

數(shù)據(jù)模型概念數(shù)據(jù)模型關系模型

模式外模式內(nèi)模式

數(shù)據(jù)獨立性邏輯數(shù)據(jù)獨立性物理數(shù)據(jù)獨立性

一對一聯(lián)系-對多聯(lián)系多對多聯(lián)系

數(shù)據(jù)庫(DB):在計算機的存儲設備上合理存放、相關聯(lián)、有結構的數(shù)據(jù)集合。

數(shù)據(jù)庫系統(tǒng)(DBS):在計算機系統(tǒng)中引進數(shù)據(jù)庫和數(shù)據(jù)庫管理系統(tǒng)后的組成?;蛘呤菍崿F(xiàn)有

組織地、動態(tài)地存儲大量相關的結構化數(shù)據(jù),方便用戶使用數(shù)據(jù)庫的計算機軟件、硬件資

源組成的系統(tǒng)。

數(shù)據(jù)庫管理系統(tǒng)(DBMS):一個操縱和管理數(shù)據(jù)庫的大型軟件,它由一組計算機程序構成。

它是位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件。

實體:客觀存在并可相互區(qū)別的個體。

實體集:具有相同實體特性實體的集合。

屬性:表示實體的特性。

關鍵字:能夠唯一標識文件中的某一個記錄的最小字段集。

數(shù)據(jù)模型:現(xiàn)實世界數(shù)據(jù)與信息的模擬和抽象。

概念數(shù)據(jù)模型:簡稱概念模型,是獨立于計算機系統(tǒng)的數(shù)據(jù)模型,完全不涉及信息在計算

機中的表示,是面向數(shù)據(jù)庫用戶的現(xiàn)實世界模型,主要用來描述現(xiàn)實世界的概念化結構。

關系模型:是最重要的一種數(shù)據(jù)模型,也是目前主要采用的數(shù)據(jù)模型,用二維表格表示現(xiàn)

實世界實體集及實體集間的聯(lián)系。

模式:是由數(shù)據(jù)庫設計者綜合所有用戶數(shù)據(jù),按照統(tǒng)一的觀點構造的對數(shù)據(jù)庫全局邏輯結

構的描述。

外模式:介于模式與應用之間,是用戶與數(shù)據(jù)庫之間的接口,是數(shù)據(jù)庫用戶(包括應用程

序員和最終用戶)能夠看見和使用的局部數(shù)據(jù)的邏輯結構和特征的描述。

內(nèi)模式:也稱存儲模式,是對數(shù)據(jù)庫中數(shù)據(jù)物理結構和存儲方式的描述,是數(shù)據(jù)在數(shù)據(jù)庫

內(nèi)部的表示方式。

數(shù)據(jù)獨立性:應用程序和數(shù)據(jù)結構之間相互獨立,不受影響。

邏輯數(shù)據(jù)獨立性:表示一旦模式發(fā)生變化,無需改變外模式或應用程序的能力。

物理數(shù)據(jù)獨立性:表示不會因為內(nèi)模式發(fā)生改變而導致概念模式發(fā)生改變的能力。

一對一聯(lián)系:設有兩個實體集A、B,如果對于實體集A中的每一個實體,B中至多有一個

實體與之有聯(lián)系,反之亦然,則稱A、B有一對一聯(lián)系(1:1聯(lián)系)。

一對多聯(lián)系:設有兩個實體集A、B,若A中每個實體與B中任意個實體(包括零個)相聯(lián)

系,而B中每個實體至多和A中一個實體有聯(lián)系,則稱A和B是一對多聯(lián)系(1:n聯(lián)系)。

多對多聯(lián)系:設有兩個實體集A、B,若兩個實體集A、B中的每一個實體都和另一個實體

集中任意個實體(包括零個)有聯(lián)系,則稱A、B是多對多聯(lián)系(m:n聯(lián)系)。

1.2判斷下列說法是否正確

⑴數(shù)據(jù)庫系統(tǒng)的一個主要特點是數(shù)據(jù)無冗余。

⑵數(shù)據(jù)庫管理系統(tǒng)和數(shù)據(jù)庫構成了數(shù)據(jù)庫系統(tǒng)。

⑶數(shù)據(jù)結構化是數(shù)據(jù)庫和文件系統(tǒng)的根本區(qū)別。

⑷若干個屬性集合就能描述一個對象。

⑸數(shù)據(jù)庫系統(tǒng)中數(shù)據(jù)具有完全獨立性。

(6)DBA主要職責是管理數(shù)據(jù)庫中的數(shù)據(jù)。

⑺數(shù)據(jù)庫避免了一切數(shù)據(jù)重復。

⑻數(shù)據(jù)操作語言是一個高級語言。

⑼非過程化語言比過程化語言好。

(10)模式是數(shù)據(jù)庫全局邏輯結構的描述。

(11)三級模式結構是數(shù)據(jù)庫唯一的一種分級模式結構。

?層次數(shù)據(jù)模型和網(wǎng)狀數(shù)據(jù)模型都可用關系數(shù)據(jù)模型表示。

?關系模型不僅可以描述實體,還可以描述實體及實體集之間的聯(lián)系。

(⑷關系數(shù)據(jù)模型與網(wǎng)狀數(shù)據(jù)模型相比具有查詢效率高的優(yōu)點。

(15)網(wǎng)狀數(shù)據(jù)模型可以直接表示M:N的聯(lián)系。

(⑹概念模型獨立于硬件設備和DBMS,

(17)視圖對重構數(shù)據(jù)庫提供了一定程度的物理獨立性。

?實體是信息世界中的術語,與之相對應的數(shù)據(jù)庫術語為字段。

?數(shù)據(jù)庫系統(tǒng)的核心工作就是完成用戶級數(shù)據(jù)庫、概念級數(shù)據(jù)庫和物理級數(shù)據(jù)庫之間的

映射。

?一個網(wǎng)狀數(shù)據(jù)結構模型可以變換為一個等價的層次數(shù)據(jù)結構模型,這種變換以存儲空

間為代價。

1-5:X,X,J,X,X,

6-10:X,X,-J,X,-J,

11-15:X,V,V,X,X

16-20:J,X,X,J,V

1.3簡答下列各題

⑴數(shù)據(jù)管理技術的發(fā)展過程。

計算機技術的發(fā)展使得數(shù)據(jù)管理技術也不斷向前發(fā)展,至今,經(jīng)歷了人工管理階段、文

件系統(tǒng)階段和數(shù)據(jù)庫系統(tǒng)階段。

⑵數(shù)據(jù)庫系統(tǒng)的三個發(fā)展階段是什么?

1)層次型和網(wǎng)狀型:

代表產(chǎn)品是1969年IBM公司研制的層次模型數(shù)據(jù)庫管理系統(tǒng)IMS。

2)關系型數(shù)據(jù)型庫:

目前大部分數(shù)據(jù)庫采用的是關系型數(shù)據(jù)庫。1970年IBM公司的研究員E.F.Codd提出了

關系模型。典型的關系DBMS產(chǎn)品有Oracle、Sybase,SQLServer,DB2、Access、VFP等等。

3)第三代數(shù)據(jù)庫將為更加豐富的數(shù)據(jù)模型和更強大的數(shù)據(jù)管理功能為特征,以提供傳統(tǒng)

數(shù)據(jù)庫系統(tǒng)難以支持的新應用。它必須支持面向?qū)ο?,具有開放性,能夠在多個平臺上使用。

⑶文件系統(tǒng)與數(shù)據(jù)庫系統(tǒng)有何區(qū)別和聯(lián)系?

文件系統(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ù)進行管理,數(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ù)結構化,冗余度小。

文件系統(tǒng)和數(shù)據(jù)庫系統(tǒng)之間的聯(lián)系:

1)均為數(shù)據(jù)組織的管理技術;

2)均由數(shù)據(jù)管理軟件管理數(shù)據(jù),程序與數(shù)據(jù)之間用存取方法進行轉(zhuǎn)換;

3)數(shù)據(jù)庫系統(tǒng)是在文件系統(tǒng)的基礎上發(fā)展而來的。

⑷數(shù)據(jù)庫系統(tǒng)的特點。

1)采用一定的數(shù)據(jù)模型實現(xiàn)數(shù)據(jù)結構化

2)數(shù)據(jù)共享、冗余度小、避免了數(shù)據(jù)的不一致

3)具有較高的數(shù)據(jù)獨立性

4)數(shù)據(jù)由DBMS統(tǒng)一管理和控制

⑸何謂數(shù)據(jù)的物理獨立性叮數(shù)據(jù)的邏輯獨立性?

邏輯獨立性表示一旦模式發(fā)生變化,無需改變外模式或應用程序的能力。

物理獨立性表示不會因為內(nèi)模式發(fā)生改變而導致概念模式發(fā)生改變的能力。

⑹數(shù)據(jù)模型的「要素。

1)數(shù)據(jù)結構;2)數(shù)據(jù)操作;3)數(shù)據(jù)完整性。

⑺舉例說明實體集之間具有1:1、1:n、m:n的聯(lián)系。

例如,有四個實體集:學生、學校、教師、校長,校長和學校為1:1聯(lián)系,學生和學校

為l:n聯(lián)系,學生和老師為m:n聯(lián)系。

⑻關系數(shù)據(jù)模型的特點是什么?

關系數(shù)據(jù)模型的主要特征是用二維表格表示現(xiàn)實世界實體集及實體集間的聯(lián)系。具有堅

實的理論基礎、表達能力強、簡單和數(shù)據(jù)獨立性高等優(yōu)點,缺點是存取效率比較低。

⑼何謂空值?

所謂空值就是“不知道”或“無意義”的值。沒有給某個屬性賦值,則稱其值為空(NULL)。

(10)層次數(shù)據(jù)模型、網(wǎng)狀數(shù)據(jù)模型和關系數(shù)據(jù)模型的優(yōu)點和缺點。

1)層次模型具有查詢效率較高、結構簡單、層次分明,便于在計算機內(nèi)實現(xiàn)的優(yōu)點,

在層次數(shù)據(jù)結構中,從根結點到樹中任意結點均存在一條唯的層次路徑,為有效地進行數(shù)

據(jù)操縱也提供了條件,并且層次數(shù)據(jù)模型提供了良好的完整性支持。

但層次模型也有缺點,一是層次數(shù)據(jù)模型缺乏直接表達現(xiàn)實世界中非層次型結構的復雜

聯(lián)系,二是層次順序的嚴格限制,使得對插入或刪除操作也帶來了較多的限制,并且查詢子

女結點必須通過雙親結點,所以使得應用程序的編寫也比較復雜。

2)網(wǎng)狀模型的主要優(yōu)點是能直接描述現(xiàn)實世界,記錄之間的聯(lián)系也是通過指針來實現(xiàn)

的,所以查詢效率高。缺點是結構和編程復雜,難掌握,不易使用。

3)關系模型有堅實的理論基礎。二維表不僅能表示實體集,而且能方便地表示實體集

間的聯(lián)系,所以說它有很強的表達能力,這是層次模型和網(wǎng)狀模型所不及的。關系模型具有

簡單、易學易用的優(yōu)點。數(shù)據(jù)獨立性高。

關系模型缺點是查詢效率常常不如非關系數(shù)據(jù)模型。

(11)舉例說明E-R圖的構成規(guī)則。

方框:表示一實體集,在框內(nèi)寫上實體集的名字

菱形框:表示聯(lián)系,菱形框內(nèi)標明聯(lián)系名,與其相關的實體集之間用箭頭表示,一個箭

頭代表為1,兩個箭頭代表為多。

橢圓框:表示屬性,在框內(nèi)寫上屬性的名字,并用無向邊連向與其相關的實體集或聯(lián)系。

在E-R圖中,有時為了突出各實體集之間的聯(lián)系,可以先畫出實體集及其屬性,然后再

重點畫出實體之間的聯(lián)系。如圖1,圖2所示。

學生

圖1學生實體及其屬性

圖2實體之間聯(lián)系

?什么是外部模式?概念模式?內(nèi)部模式?它們之間有何聯(lián)系?這種分級結構的優(yōu)點

是什么?

外部模式又稱子模式,介于模式與應用之間,是用戶與數(shù)據(jù)庫之間的接口,是數(shù)據(jù)庫用

戶(包括應用程序員和最終用戶)能夠看見和使用的局部數(shù)據(jù)的邏輯結構和特征的描述。

概念模式簡稱模式,是由數(shù)據(jù)庫設計者綜合所有用戶數(shù)據(jù),按照統(tǒng)一的觀點構造的對數(shù)

據(jù)庫全局邏輯結構的描述。

內(nèi)部模式也稱存儲模式,是對數(shù)據(jù)庫中數(shù)據(jù)物理結構和存儲方式的描述,是數(shù)據(jù)在數(shù)據(jù)

庫內(nèi)部的表示方式。

一個數(shù)據(jù)庫結構從邏輯上可以劃分為三個層次:外部模式(ExternalSchema),概念模

式(ConceptualSchema)和內(nèi)部模式(InternalSchema),稱為數(shù)據(jù)庫系統(tǒng)的三級模式結構。

數(shù)據(jù)庫系統(tǒng)的三級模式是對數(shù)據(jù)進行三個級別的抽象。它把數(shù)據(jù)的具體組織留給DBMS

去做,用戶只要抽象地處理數(shù)據(jù),而不必關心數(shù)據(jù)在機器中的具體表示方式和存儲方式。數(shù)

據(jù)庫的三級結構是依靠映像來聯(lián)系和互相轉(zhuǎn)換的。正是這兩層映像保證了數(shù)據(jù)庫系統(tǒng)中的數(shù)

據(jù)具有較高的數(shù)據(jù)獨立性。

?什么是數(shù)據(jù)獨立性?在數(shù)據(jù)庫系統(tǒng)體系結構中是如何體現(xiàn)的?

1)數(shù)據(jù)獨立性:數(shù)據(jù)庫系統(tǒng)在某一層次模式上的改變不會使它的上一層模式也發(fā)生改變

的過程。數(shù)據(jù)獨立性包括數(shù)據(jù)的邏輯獨立性和物理獨立性兩種。

2)一個數(shù)據(jù)庫結構從邏輯上可以劃分為三個層次:外部模式(ExternalSchema),概念

模式(ConceptualSchema)和內(nèi)部模式(InternalSchema),稱為數(shù)據(jù)庫系統(tǒng)的三級模式結

構。數(shù)據(jù)庫的三級結構是依靠外模式/模式映像和模式/內(nèi)模式映像來聯(lián)系和互相轉(zhuǎn)換的。正

是這兩層映像保證了數(shù)據(jù)庫系統(tǒng)中的數(shù)據(jù)具有較高的數(shù)據(jù)獨立性,其中外模式/模式映像保

證邏輯獨立性,模式/內(nèi)模式映像保證物理獨立性。

(⑷數(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ù)庫應用系統(tǒng),還需要有各種高級語言及其編譯系統(tǒng)。

(15)什么是數(shù)據(jù)字典.?它在數(shù)據(jù)庫中的作用是什么?

數(shù)據(jù)字典(DataDictionary)是描述各級模式的信息,主要包括所有數(shù)據(jù)的結構名、意

義、描述定義、存儲格式、完整性約束、使用權限等信息。由于數(shù)據(jù)字典包含了數(shù)據(jù)庫系統(tǒng)

中的大量描述信息(而不是用戶數(shù)據(jù)),因此也稱它為“描述信息庫”。

數(shù)據(jù)字典是DBMS存取和管理數(shù)據(jù)的基本依據(jù),主要由系統(tǒng)管理和使用

(1?DBA的主要職責是什么?

①參與數(shù)據(jù)庫系統(tǒng)的設計與建立。

②對系統(tǒng)的運行實行監(jiān)控。

③定義數(shù)據(jù)的安全性要求利完整性約束條件。

④負責數(shù)據(jù)庫性能的改進和數(shù)據(jù)庫的重組及重構工作。

?用戶訪問數(shù)據(jù)庫的過程。

D接受應用程序的數(shù)據(jù)請求

2)DBMS對用戶的操作請求進行分析

3)數(shù)據(jù)庫管理系統(tǒng)要向操作系統(tǒng)發(fā)出操作請求

4)操作系統(tǒng)接到命令后,對數(shù)據(jù)庫中的數(shù)據(jù)進行處理,將結果送到系統(tǒng)緩沖區(qū),并發(fā)出

讀完標志。

5)DBMS接到回答信號后,將緩沖區(qū)的數(shù)據(jù)經(jīng)過模式映射,變成用戶的邏輯記錄送到用

戶工作區(qū),同時給用戶回答成功與否的信息。

(18)關系數(shù)據(jù)庫完整性約束有口那些?舉例說明。

1)實體完整性約束:實體完整性約束是指任一關系中標識屬性(關鍵字)的值,不能為

NULL,否則,無法識別關系中的元組。

2)參照完整性約束:參照完整性是不同關系間的一種約束,當存在關系間的引用時,要

求不能引用不存在的元組。若屬性組F是關系R(U)的外關鍵字,并是關系S(U)的關鍵

字(即F不是R(U)的關鍵字,而是S(U)的關鍵字,稱F是R(U)的外關鍵字),則對于R(U)

中的每個元組在屬性組F上的值必須為:空值(NULL)或者等于S(U)中某個元組的關鍵

字值。

3)用戶定義完整性約束。如值的類型、寬度等。

?有控制的冗余與無控制的冗余有什么區(qū)別?

有控制的冗余是指數(shù)據(jù)庫設計者在設計中為了提高操作效率有意保留的冗余數(shù)據(jù),無控

制冗余是在數(shù)據(jù)庫設計中由于屬性間的依賴而存在的關聯(lián)數(shù)據(jù),兩者的區(qū)別是無控制冗余不

是數(shù)據(jù)庫設計者所要保留的冗余數(shù)據(jù),因為它會帶來很多問題,使得存儲效率比較低,而有

控制冗余是數(shù)據(jù)庫設計者有意保留的數(shù)據(jù),主要是為了改善對數(shù)據(jù)庫的查詢效率。

?簡述數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)和數(shù)據(jù)庫系統(tǒng)之間的關系

數(shù)據(jù)庫是指在計算機的存儲設備上合理存放、相關聯(lián)、有結構的數(shù)據(jù)集合。這個數(shù)據(jù)的

集合由數(shù)據(jù)庫管理系統(tǒng)進行建立和維護,用戶訪問數(shù)據(jù)庫中的各種請求都是通過數(shù)據(jù)庫管理

系統(tǒng)完成的。數(shù)據(jù)庫系統(tǒng)是在計算機系統(tǒng)中引進數(shù)據(jù)庫和數(shù)據(jù)庫管理系統(tǒng)后的組成,沒有數(shù)

據(jù)庫和數(shù)據(jù)庫管理系統(tǒng)不能夠構成數(shù)據(jù)庫系統(tǒng)。

1.4選擇題

⑴在()中一個結點可以有多個雙親,結點之間可以有多種聯(lián)系。

A網(wǎng)狀模型B關系模型C層次模型D以上都有

⑵數(shù)據(jù)庫管理系統(tǒng)(DBMS)是()。

A一個完整的數(shù)據(jù)庫應用系統(tǒng)B一組硬件

C一組軟件D既有硬件,也有軟件

⑶用戶或應用程序看到的那部分局部邏輯結構和特征的描述是()模式。

A模式B物理模式C子模式D內(nèi)模式

⑷要保證數(shù)據(jù)庫的邏輯數(shù)據(jù)獨立性,需要修改的是()。

A模式與外模式之間的映射B模式與內(nèi)模式之間的映射

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)之間的關系是()。

ADBS包括DB和DBMSBDBMS包括DB和DBS

CDB包括DBS和DBMSDDBS就是DB,也就是DBMS

⑺數(shù)據(jù)庫系統(tǒng)與文件系統(tǒng)的主要區(qū)別是()?

A數(shù)據(jù)庫系統(tǒng)復雜,而文件系統(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具體的機器和DBMSBE-R圖C信息世界D現(xiàn)實世界

⑼在數(shù)據(jù)庫中存儲的是()。

A數(shù)據(jù)B數(shù)據(jù)模型C數(shù)據(jù)以及數(shù)據(jù)之間的聯(lián)系D信息

(10)在數(shù)據(jù)庫中,數(shù)據(jù)的物理獨立性是指()o

A數(shù)據(jù)庫與數(shù)據(jù)庫管理系統(tǒng)的相互獨立

B用戶程序與DBMS的相互獨立

C用戶的應用程序與存儲在磁盤上的數(shù)據(jù)庫中的數(shù)據(jù)是相互獨立的

D應用程序與數(shù)據(jù)庫中數(shù)據(jù)的邏輯結構相互獨立

QD數(shù)據(jù)庫的特點之??是數(shù)據(jù)的共享,嚴格地講,這里的數(shù)據(jù)共享是指().

A同一應用中的多個程序共享一個數(shù)據(jù)集合

B多個用戶、同一種語言共享數(shù)據(jù)

C多個用戶共享一個數(shù)據(jù)文件

D多種應用、多種語言、多個用戶相互覆蓋地使用數(shù)據(jù)集合

?在數(shù)據(jù)庫技術中,為提高數(shù)據(jù)庫的邏輯獨立性和物理獨立性,數(shù)據(jù)庫的結構被劃分成

用戶級、()和存儲級三個層次

A管理員級B外部級C概念級D內(nèi)部級

?在數(shù)據(jù)庫中,產(chǎn)生數(shù)據(jù)不一致的根本原因是()。

A數(shù)據(jù)存儲量太大B沒有嚴格保護數(shù)據(jù)

C未對數(shù)據(jù)進行完整性控制D數(shù)據(jù)冗余

(M)數(shù)據(jù)庫具有①、最小的②和較高的程序與數(shù)據(jù)③。

①A程序結構化B數(shù)據(jù)結構化C程序標準化D數(shù)據(jù)模塊化

②A冗余度B存儲量C完整性D有效性

③A可靠性B完整性C獨立性D一致性

?在數(shù)據(jù)庫的三級模式結構中,描述數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結構和特征的是()。

A外模式B內(nèi)模式C存儲模式D模式

l-5:A,C,C,A,C

6-10:A,B,A,C,C

11-15:D,C,D,BAC,D

1.5對于工程碩士的管理需要掌握的信息有:學生現(xiàn)在的工作單位、職務、簡歷情況,其中

簡歷情況包括開始時間、終止時間、單位、擔任職務、證明人;學生目前在校情況,包括學

生的學號、所在學院、所學專業(yè)、入學時間、導師;學生在校所學的課程號、課程名、學時、

授課教師及成績;學院包括學院代號、學院名稱、院長;導師包括導師職工編號、姓名、出

生日期、職稱、研究方向。

要求:

⑴確定實體及實體型屬性;

⑵找出實體間的聯(lián)系;

⑶畫出E-R圖。

(1)學生:學號,姓名,專業(yè),學院,入學時間,工作單位,導師號,簡歷號,職務

簡歷:簡歷號,開始時間,結束時間,證明人,單位,擔任職務

課程:課程號,學時,課程名,授課教師

學院:學院代號,學院名稱,院長

導師:導師號,姓名,出生日期,研究方向

(2)學生-簡歷:1:n

學生-學院:n:1

學生-導師:n:1

學生-課程:n:m

導師-學院:n:1

入學時間

T.作單位

圖1學生實體及其屬性

開始時間

結束時間

擔任職務

圖2簡歷實體及其屬性

圖3課程實體及其屬性

學院

圖4學院實體及其屬性

圖5導師實體及其屬性

圖6實體聯(lián)系圖

第二章

2.1試述關系模型的3個組成部分

答:關系模型由關系數(shù)據(jù)結構、關系操作和關系完整性約束三部分組成。

2.2一個關系模式能否沒有關鍵字?為什么?

答:不可以沒有關鍵字,因為關鍵字是元組的唯一標志,如果沒有關鍵字則無法唯一標識

一個元組。

2.3試述關系模型的完整性規(guī)則。在參照完整性中,為什么外部關鍵字屬性的值也可以為

空?什么情況下才可以為空?

答:(1)實體完整性規(guī)則:若屬性A是基本關系R的主屬性,則屬性A不能取空值。

(2)參照完整性規(guī)則:若屬性(或?qū)傩越M)F是基本關系R的外碼,它與基本關系S的主

碼Ks相對應(基本關系R和S不一定是不同的關系),則對于R中每個元組在F上的值必須

為:或者取空值(F的每個屬性值均為空值);或者等于S中某個元組的主碼值。即屬性F本

身不是主屬性,則可以取空值,否則不能取空值。

當外部關鍵字F對應的主鍵Ks值為空值時,說明F暫時沒有賦值,此時F值必須取空

值。

2.4一個n行、m列的二維表(其中沒有兩行或兩列全同),將行或列交換后,能導出多少

個不同的表?

答:1個

2.5

答:

(1)最小個數(shù)為:取m,n中的大者;最大個數(shù)為:m+n

(2)最小個數(shù)為:0;最大個數(shù)為:取m,n中的小者

(3)最小個數(shù)為:0;最大個數(shù)為:m*n

(4)最小個數(shù)為:0;最大個數(shù)為:n

2.6

答:

RuS={(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)}

RnS={(7,2,3)}

RXS={(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)}

n3,2(s)={(5,4),(3,2)}

oB<'5'(R)={(7,2,3),(4,4,3)}

2.7

答:該表達式的意思是:從關系R中選擇元組,該元組滿足:第1分量值或第2分量值至少

有一個不等于其他某元組,即選擇與其他元組不完全相同的元組。由于關系模型的性質(zhì)要求,

關系中不能夠有重復的元組,因此上述條件一定滿足,所以,這個表達式結果就是R。

2.8

(1)從R和S的笛卡爾積中選擇滿足下列條件的元組:

第2分量與第4分量相等,或第3分量和第4分量相等,并取第1分量和第5分量構成新的

關系。

(2)元組表達式

{/I(3w)(3v)(/?(w)AS(V)AU[2]=v[l]AW[3]=V[1]A/[1]=u[l]At\2]=v[2]}

(3)域表達式{劉I(寺)(土)(火(孫Z)A5(wv)A(y=MVZ=〃))}

2.9

(l)漢語表達式:選擇R關系中元組第2分量值不等于S關系中某元組第1分量值的元組。

(2)關系代數(shù)表達式:M/JRxS))

(3)域表達式.{孫l0")0y)(R(孫)

2.10

(1)漢語表達式:選擇R中元組第1分量值與第2分量值互換后仍存在于R中的元組。

n

(2)關系代數(shù)表達式:L2(5=4人2=3(RXR))

(3)域表達式:-1(孔)(R。)人尺3)八兀1]="⑵人42]=叩D)

2.11

(1)ui(aH)(/?(M)Adi]=w[i])}

⑵{fl(即)At⑵=17)}

(3)

{rI(3M)(3V)(/?(M)AS(V)A/[I]=w[l]Ar[2]=u[2]A/[3]=w[3]A/[4]=v[l]Ar[5]=v[2]A/[6]=v[3]}

(4){tI(3M)(3V)(/?(M)AS(V)AW[3]=v[l]Af[l]=M[1]At[2]=v[3])

2.12

設有關系:S(SNO,SNAME,AGE,SEX,CDEPT);

SC(SNO,CNO,GRADE);

C(CNO,CNAME,CDEPT,TNAME);用關系代數(shù)表示

(1)劉老師所教授課程的課程號、課程名

llrao.CNAHE(O9帕,劉,(O)

(2)檢索年齡大于23的男學生的學號和姓名

Flsxo.SNAKE(。AGE>23OSEX=W(S))

(3)檢索學號為"090111,學生所學課程的課程名與任課教師名

00

ricNAME.TXAME(C0SNO=40901ITSC)

(4)檢索至少選修劉老師所教授課程中一門課的女學生姓名

risxaiE(°TNAME:,劉'(C)°°SC°°OSEX^(S))

(5)檢索'王一寧'同學不學課程的課程號

FICKO(C)-IIcNO(°SNAMl?'X'f(S)8SC)

(6)檢索至少選了兩門課的學生學號

FISNO(。[1]=[4]n[2]<>[5](scxSC))

(7)檢索全部學生都選修的課程的課程號和課程名

00

riciiO.CNABE(C(FISNO.CNO(SC)+FIsM>(S)))

(8)檢索選修課程包括劉老師所教授課程的學生姓名

risKAMB(SC°°OTNM£=,為/(C))

2.13

(1)劉老師所教授課程的課程號、課程名

{t|(3u)(C(u)At[l]=u[l]At[2]=u[2]AC[3]='劉')}

(2)檢索年齡大于23的男學生的學號和姓名

{t|Gu)(S(U)At[l]=u[l]At⑵=U⑵Au[3]>23Au[4]='男,)}

(3)檢索學號為,090111'學生所學課程的課程名與任課教師名

{t!(3u)(3v)(C(v)ASC(u)Av[l]=u[2]At[l]=v[2]八”2]=V[3]AV[1]='090111')}

(4)檢索至少選修劉老師所教授課程中一門課的女學生姓名

{t!(3u)(3v)(3w)(S(U)ASC(V)AC(W)AU[4]=’女'AV[1]=U[1]AV[2]=W[1]AW[3]=

'劉’At[l]=u[2])}

(5)檢索'王一寧'同學不學課程的課程號

{tI(3M)(VV)C(M)ASC(V)A(U[1]=v[2]=>0w)(s(w)AMl]=v[l]A例2]豐'王一寧'))A/[1]=M[1])}

(6)檢索至少選了兩門課的學生學號

(7)檢索全部學生都選修的課程的課程號和課程名

{tI(VH)(3V)(3W)(S(M)ASC(V)AC(W)AM[1]=v[l]AV[2]=w[l]At[l]=v[l]At[2]=v[2]}

(8)檢索選修課程包括劉老師所教授課程的學生姓名

{tI(3M)(3V)(SC(M)AC(V)A譏2]=v[l]Av[3]=,劉老師'Ar[l]=?[1]}

(1)11CX0.TNAMB(。SDEPT=■計算機’(S)8SC80CW*%動化,(C)

(2)ItCSO.TXAUE(。SWT-計算MZA°CDEPT='自動化.AS.SNO=SC.SNOASC.CNO^C.CNO(SXSCXC))

nCNOJNAME

CSDEPT='計算機'AcCDEPT='自動化'AS.SNO=SC.SNOASC.CNO=C.CNO

sc

s

nCNOJNAME

°SC.CNO=C.CNO

OSDEPT='計算機'SC

nCNOJNAME

OSC.CNO=C.CNO

nC.CNOJNAM^SC.CNO

X

oS.SNO=SC.SNOcCDEPTig動化'

X

OSDEPT='計算機'SC

s

nCNOJNAME

oSC.CNO=C.CNO

nSC.CNO

OS.SNO=SC.SNOoCDEPT3自動化,

c

c

OSDEPT*計算機,SC

S

nCNOJNAME

oSC.CNO=C.CNO

nSC.CNO

oS.SNO=SC.SNOOCDEPT='自動化'

C

nsNOnSNO,CNO

OSDEPTi計算機,

C

S

2.16

在關系代數(shù)運算中,各個運算所費時間和空間是不一樣的,如何安排若干關系的運算操作步

驟,直接影響到整個操作所需要的時間和空間。對關系代數(shù)表達式進行優(yōu)化,可以提高系統(tǒng)

的操作效率,達到執(zhí)行過程既省時間又省空間的目的。

第三章

3-1解釋下列術語:

基本及視圖單表查詢連接查詢嵌套查詢交互式SQL嵌入式SQL宿主語言

答:

(1)基本表:簡稱基表。是數(shù)據(jù)庫中實際存在的表,在SQL中一個關系對應于一個表。

(2)視圖:SQL用視圖概念支持非標準的外模式概念。視圖是從一個或幾個基表導出的表,

雖然它也是關系形式,但它本身不實際存儲在數(shù)據(jù)庫中,只存放對視圖的定義信息(沒有對

應的數(shù)據(jù))。因此,視圖是一個虛表(VirtualTable)或虛關系,而基表是一種實關系(Practical

Relation),

(3)單表查詢:只涉及到一個關系的查詢。

(4)連接查詢:同時涉及兩個以上的表的查詢。

(5)嵌套查詢:將一個查詢塊嵌套在另一個查詢塊的WHERE子句或HAVING條件中的查詢。

(6)交互式SQL:做為獨立語言由用戶在交互環(huán)境下使用的SQL語言。

(7)嵌入式SQL:將SQL語言嵌入到某種高級語言中使用,利用高級語言的過程性結構來

彌補SQL語言在實現(xiàn)復雜應用方面的不足的SQL語言。

(8)宿主語言:嵌入SQL的高級語言稱為主語言或宿主語言。

3-2試述SQL語言的特點

答:1.綜合統(tǒng)一

2.高度非過程化

3.面向集合的操作方式

4.以同一種語法結構提供兩種使用方式

3-3試述SQL體系結構和關系數(shù)據(jù)庫模式之間的關系

答:

SQL語言支持關系數(shù)據(jù)庫體系結構,即外模式、模式和內(nèi)模式,利用SQL語言可以實現(xiàn)對三

級模式的定義、修改和數(shù)據(jù)的操縱功能,在此基礎上形成了SQL體系結構;在SQL體系結構

中的視圖對應了關系數(shù)據(jù)模式的外模式,基本表對應了關系數(shù)據(jù)模式的模式,存儲文件對應

了關系數(shù)據(jù)模式的內(nèi)模式。

3-4SQL是如何實現(xiàn)實體完整性、參照完整性和用戶定義完整性的?

答:

實體完整性簡單的說,就是將表中的每一行看作一個實體。實體完整性要求表的標示符列或

主鍵的完整性??梢酝ㄟ^建立唯一索弓I、PRIMARYKEY約束、UNIQUE約束,以及列的IDENTITY

屬性來實施實體完整性。

參照完整性維持被參照表和參照表之間的數(shù)據(jù)一致性,他通過主鍵(PRIMARYKEY)約束和

外鍵(FOREIGNKEY)約束來實現(xiàn)。引用完整性確保鍵值在所有表中一致。這樣的一致性要

求不能引用不存在的值,如果鍵值更改了,那么在整個數(shù)據(jù)庫中,對該鍵值的所有引用要進

行一致的更改。在被參照表中,當其主鍵值被其他表所參照時,該行不能被刪除也不允許改

變。在參照表中,不允許參照不存在的主鍵值。

用戶定義完整性使得可以定義不屬于其它任何完整性分類的特定業(yè)務規(guī)則。所有的完整性類

型都支持用戶定義完整性。

3-5討論當對一個視圖進行更新的時候可能會出現(xiàn)什么樣的問題?

答:

1)若視圖的屬性來自屬性表達式或常數(shù),則不允許對視圖執(zhí)行INSERT和UPDATE操作,

但允許執(zhí)行DELETE操作。

2)若視圖的屬性來自庫函數(shù),則不允許對此視圖更新。

3)若視圖定義中有GROUPBY子句,則不允許對此視圖更新。

4)若視圖定義中有DISTINCT任選項,則不允許對此視圖更新。

5)若視圖定義中有嵌套查詢,并且嵌套查詢的FROM子句涉及導出該視圖的基本表,

則不允許對此視圖更新。

6)若視圖由兩個以上的基本表導出,則不允許對此視圖更新。

7)如果在一個不允許更新的視圖上再定義一個視圖,這種二次視圖是不允許更新的。

3-6設有兩個基本表R(A,B,C)和S(A,B,C)試用SQL查詢語句表達下列關系代數(shù)表達式:

(1)RAS(2)R-S(3)RUS(4)RXS

(1)(select*fromR)INTERSECT(select*fromS)

(2)(select*fromR)EXCEPT(select*fromS)

(3)(select*fromR)UNION(select*fromS)

(4)select*fromR,S

3-7對于教學數(shù)據(jù)庫的三個基本表:

S(學號,姓名,年齡,性別)

SC(學號,課程號,成績)

C(課程號,課程名,任課教師姓名)

試用SQL語句表達下列查詢:

⑴查詢“劉某”老師所授課程的課程號和課程名。

⑵查詢年齡大于23歲的男同學的學號和姓名。

⑶查詢學號為S3的學生所學課程的課程號、課程名和任課教師姓名。

(4)查詢“張小飛”沒有選修的課程號和課程名。

⑸查詢至少選修了3門課程的學生的學號和姓名。

(6)查詢?nèi)繉W生都選修了的課程編號和課程名稱。

⑺在SC中刪除尚無成績的選課元組。

(8)把“高等數(shù)學”課的所有不及格成績都改為60。

⑼把低于總評均成績的女同學的成績提高5%。

⑩向C中插入元組(‘C8',‘VC++','王昆')。

3-7

(1)查詢“劉某”老師所授課程的課程號和課程名;

SELECT課程號,課程名

FROMC

WHERE任課教師姓名LIKE,劉*,

(2)查詢年齡大于23歲的男同學的學號和姓名;

SELECT學號,姓名

FROMS

WHERE年齡>23AND性別='男,

(3)查詢學號為S3的學生所學課程和課程號,課程名和任課教師姓名

SELECTC.課程號,課程名,任課教師姓名

FROMC,SC

WHERESC.學號='S3'AndC.課程號=SC.課程號

(4)查詢"張小飛”同學沒有選修的課程的課程號和課程名;

SELECTC.課程號,C.課程名

FROMC

WHERE課程號NOTIN

(SELECT課程號

FROMSC

WHERE學號IN

(SELECT學號FROMS

WHERE姓名='張小飛'));

或者

SELECT*

FROMC

WHERENOTEXISTS

(SELECTSC.課程號

FROMSC,S

WHERESC.課程號=C.課程號ANDS.學號=SC.學號

ANDS姓名='張小飛,)

或者

SELECT*

FROMC

WHERE課程號NOTIN

(SELECT課程號

FROMSC,S

WHERES.學號=SC.學號ANDS.姓名=,張小飛')

(5)查詢至少選修了3門課程的學生的學號和姓名;

SELECT學號,姓名

FROMS

WHERE學號IN

(SELECT學號

FROMSC

GROUPBY學號

HAVINGCOUNT(課程號)>=3)

(6)查詢?nèi)繉W生都選修了的課程號和課程名;

SELECT課程號,課程名

FROMC

WHERENOTEXISTS

(SELECT學號

FROMS

WHERENOTEXISTS

(SELECT學號

FROMSC

WHERESC.課程號=C.課程號ANDS.學號=SC.學號))

或者

SELECT課程號,課程名

FROMC

WHERENOTEXISTS

((SELECT學號

FROMS)

EXCEPT

(SELECT學號

FROMSC

WHERESC.課程號=C.課程號))

(7)在SC表中刪除無成績的選課紀錄;

DELETE*

FROMSC

WHEREGRADEisnull;

(8)把“高等數(shù)學”的所有不及格成績都改為60分;

UPDATESC

SET成績=60

WHEREGRADE<60AND課程號=

(SELECT課程號

FROMC

WHERE課程名=,高等數(shù)學,)

(9)把低于總平均成績的女同學的成績提高5%

UPDATEsc

SET成績=成績*(1+0.05)

WHERE學號in

(select學號fromswhere性別='女')and成績<(selectavg(成績)fromsc);

(10)向C中插入元組(“C8","VC++”,“王昆”)

INSERTINTOC

VALUES('C8'JVC++',,王昆');

3-8圖3-2中顯示的數(shù)據(jù)庫模式Library,用來記錄書籍、借書人和書籍借出的情況,參照完

整性在圖中用有向弧來表示,請用SQL語言建立圖中的關系模式,并完成下列操作:

BookllLAuthor

Book11)TitlePublisherNaac

NaneAddressPhone

圖3-2Library數(shù)據(jù)庫模式

⑴查詢“高等教育出版社”出版的所有圖書名稱和編號;

⑵查詢所有作者是“郭雨辰”的圖書的編號和名稱;

⑶查詢“李明”借過的所有圖書的名稱;

(4)查詢“李明”從2008年1月1日到2009年1月1日期間借過的圖書名稱;

⑸列出從2008年1月1日到2009年1月1日期間沒有被人借過的圖書名稱和編號;

(6)列出從2008年1月1日到2009年1月1日期間借出次數(shù)最多的10本圖書名稱;

(7)將“高等教育出版社”的電話改為“010—64054588”;

3-8

(1)

SELECTBookID,Title

FROMBook

WHEREPublishNamei高等教育出版社,

(2)

SELECTBookID,Title

FROMBookID,Book

WHEREBook.BooklD=Author.BooklDANDAuthor='郭雨辰'

(3)

SELECTTitle

FROMBook,Borrow,Borrower

WHEREBorrow.CardlD=Borrower.CardlDANDBorrow.BooklD=Book.BooklDAND

Borrower.Name='李明'

SELECTTitle

FROMBook,Borrow,Borrower

WHEREBorrow.CardlD=Borrower.CardlDANDBorrow.BooklD=Book.BooklDAND

Borrower?Name='李明'ANDDateOutBETWEEN2008-1-1AND.2009-1-1

(5)

SELECTTitle

FROMBook

WHERENOTEXISTS

(SELECT*

FROMBorrow,Book

WHEREBorrow.BooklD=Book.BooklDANDDateoutBetween2008-1-1AND2009-1-1)

SELECTtop10Title

FROMBook,Borrow

WHEREBorrow.BooklD=Book.BooklDANDDateoutBetween2008-1-1AND2009-1-1

GROUPBYBook.BookID

ORDERBYBook.BookIDDESC

(7)

UPDATEPublisher

SETPhone=

WHEREName*高等教育出版社,

3-9針對3.8建立的表,用SQL語言完成下列操作:

(1)把對所有表的INSERT權限授予“張麗”,并允許她將此權限授予其他用戶;

GrantINSERTto'張麗'withgrantoption

⑵把查詢和修改BORROWER的權限受給用戶“王偉”。

Grantselect,updateonBORROWERto'王偉'

習題四

4.1理解并給出卜列術語的定義:函數(shù)依賴部分函數(shù)依賴完全函數(shù)依賴傳遞函數(shù)依賴

候選碼主碼外碼全碼主屬性非主屬性INF2NF3NFBCNF4NF函數(shù)依賴集

閉包屬性集閉包函數(shù)依賴集等價最小函數(shù)依賴集無損連接函數(shù)依賴保持

設R(U)是屬性集U上的關系模式。若對于R(U)的任意一個可能的關系r,X,Y是屬性

集U的任意子集,當且僅當對r中任意一個給定的X的屬性值,r中都只存在惟一的丫屬性

值與之對應。也就是說,如果X相等,就有y也相等,則稱y函數(shù)依賴于X或X函數(shù)確定Y,

記作XfY。

在R(U)中,如?果xy,并且對于x的一個真子集x',有x丫成立,則稱Y對x

部分函數(shù)依賴(PartialFunctionalDependency),記作X——?

在R(U)中,如果xfy,并且對于x的任何一個真子集x',都有X,為丫成立,則

稱丫對X完全函數(shù)依賴(FullFunctionalDependency),記作X―<.

在R(U)中,如果X—>y,y-/>Xf丫.Z,則稱Z對X傳遞函數(shù)依賴(Transitive

FunctionalDependency),記做y,、工

設K為R<U,F>中的屬性或?qū)傩越M,若K/,U,則人為R的候選碼。若候選碼多于

一個,則選定其中的一個為主碼。包含在任何一個候選碼中的屬性,叫做主屬性。不包含在

任何候選碼中的屬性稱為非主屬性。最簡單的情況,碼只包含單個屬性;最復雜的情況是所

有屬性集組合成碼,稱為全碼。關系模式R中屬性或?qū)傩越MX并非R的主碼,但X是另?

個關系模式的主碼,則稱X是R的外碼。

設R是一個關系模式,如果R中的每一個屬性A的屬性名和屬性值都是不可再分的,

則稱R屬于第一范式,記作:RG1NF。

若Re1NF,且每一個非主屬性都完全函數(shù)依賴于碼,則Re2NF。

關系模式R(U,F)中若不存在這樣的碼X,屬性組y及非主屬性組z(z$r),使得

x—y,y分x,成立,貝U稱R(U,F)€3NF。

關系模式R(U,F)elNF,若每一個決定因素都含有碼,則ReBCNF。

關系模式R(U,F)eiNF,若對R的每個非平凡多值依賴Xf—y(丫g*),X都包含碼,

則稱R(U)滿足第四范式,記為RC4NF。

稱所有被一個一知函數(shù)依賴集F邏輯蘊涵的那些函數(shù)依賴的集合為F的閉包(Closure),

記為F\

設有關系模式R(U),F是U上的一個函數(shù)依賴集,XqU,定義

Xj={A|xA能由F根據(jù)Armstrong公理導出},

并稱為屬性集X關于函數(shù)依賴集F的閉包。

如果函數(shù)依賴集F滿足下列條件,則稱F是一個極小函數(shù)依賴集或最小覆蓋。

①F中每一個函數(shù)依賴的右部都是單個屬性。

②對F中任一函數(shù)依賴X-A,F-{X—A}都不與F等價。

③對于F中的任一函數(shù)依賴X-A,{F-{XfA}}U{Z-A}都不與F等價,其中Z為X的任一

子集。

如果函數(shù)依賴集F與某個最小依賴集小,“等價,則稱小”,是F的最小覆蓋或尸“是F

rmrmrm

的最小依賴集。

設R是個關系模式,F是R上的一個函數(shù)依賴集,R分解為關系模式的集合夕={R1(U1),

R2(U2),…,Rn(Un)}。如果對于R的滿足F的每一個關系r,都有

,=小。)>4人2(,)凡4口即(廠)’則稱/?是一個無損連接的分解Qossinglessjion

decomposition)

若F"=(')+,則R(U,F)的分解0={R/U1,F|),....R(UK,R)})保持函

UE

i=l

數(shù)依賴。

4.2設有關系模式R(A,B,C,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,

CDfE}的等價性

【參考答案】

A-BC,A-D,CD-E,AA-BCE,A—ABD,有

A-BCE,AfABD,:.A-BC,A-D,CD-E,有G=F+

所以F和G等價。

4.4設關系模式R(ABCD),F是R上成立的函數(shù)依賴集,F(xiàn)=[A^B,C^B},則相對于F,

試寫出關系模式R的候選碼,并說明理由

【參考答案】

關系模式R的候選碼為ACD

在關系F中B只出現(xiàn)在右邊,所以B一定不是候選碼

在關系F中D沒有出現(xiàn)D必然出現(xiàn)在候選碼中

在關系F中AC出現(xiàn)在左邊

A-B,C-C,A-*A

所以A能推出ABC,因此候選碼是ACD

4.5設有關系模式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屬性:ABCD

(AE)+={AE}

(BE)+={ABCDE)

(CE)+={ABCDE}

(DE)+={ABCDE)

R的候選碼為:BE,CE,DE

⑶右部屬性單一化:F1={AB-D,B-C,BfD,DE-B,C-D,D-A}

去掉多余的函數(shù)依賴:F2={BfC,DE-B,CfD,D-A)

去掉冗余的屬性:沒有冗余屬性

所以F的最小覆蓋Fmm=F2={B-C,DE-B,C-D,D-A)

4.6設有關系模式R(A,B,C,D),R的函數(shù)依賴集F={A-C,C-A,B-AC,D-AC,

BD~A},求F的最小覆蓋

【參考答案】

第一步:將F的所有函數(shù)依賴的右部都分解成單一屬性:

F1={A—C,C-A,B-A,B-C,D->A,D-C,BD—A}

第二步:去掉冗余的函數(shù)依賴:

①考察A-C,令6={C-*A,B-A,B-C,D-A,D-*C,BD-A},A、={A}

因為A+G,所以A-C不冗余;

+

②考察CfA,令6={AfC,B-A,B-C,D^A,D-C,BD-A},CG={C}

+

因為AgCG,所以C-A不冗余;

+

③考察B-A,令6={A-C,C-A,B-C,D-A,D-C,BD-*A),BG={ABC}

+

因為AeBG,所以B-A冗余,從Fl中刪除B-A,F2={A-C,C-A,B-C,D

-A,D

溫馨提示

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

評論

0/150

提交評論