數(shù)據(jù)庫(kù)系統(tǒng)概論習(xí)題集_第1頁(yè)
數(shù)據(jù)庫(kù)系統(tǒng)概論習(xí)題集_第2頁(yè)
數(shù)據(jù)庫(kù)系統(tǒng)概論習(xí)題集_第3頁(yè)
數(shù)據(jù)庫(kù)系統(tǒng)概論習(xí)題集_第4頁(yè)
數(shù)據(jù)庫(kù)系統(tǒng)概論習(xí)題集_第5頁(yè)
已閱讀5頁(yè),還剩169頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

數(shù)據(jù)庫(kù)系統(tǒng)概論習(xí)題集

第一章緒論

一、選擇題

1.dbs是采用了數(shù)據(jù)庫(kù)技術(shù)的計(jì)算機(jī)系統(tǒng),dbs是一個(gè)

集合體,包含數(shù)據(jù)庫(kù)、計(jì)算機(jī)硬件、軟件和(C)O

a.系統(tǒng)分析員b.程序員c.數(shù)據(jù)庫(kù)管理員d.操作員

2.數(shù)據(jù)庫(kù)(db),數(shù)據(jù)庫(kù)系統(tǒng)(dbs)和數(shù)據(jù)庫(kù)管理

系統(tǒng)(dbms)之間的關(guān)系是(a)o

a.dbs包括db和dbmsb.dbms包括db和dbs

c.db包括dbs和dbmsd.dbs就是db,也就是dbms

3.下面列出的數(shù)據(jù)庫(kù)管理技術(shù)發(fā)展的三個(gè)階段中,沒有專

門的軟件對(duì)數(shù)據(jù)進(jìn)行管理的是(d)o

i.人工管理階段

ii.文件系統(tǒng)階段

iii.數(shù)據(jù)庫(kù)階段

a.i和iib.只有ii

c.ii和iiid.只有i

4.下列四項(xiàng)中,不屬于數(shù)據(jù)庫(kù)系統(tǒng)特點(diǎn)的是(c)o

a.數(shù)據(jù)共享b.數(shù)據(jù)完整性c.數(shù)據(jù)冗余度高d.數(shù)據(jù)

獨(dú)立性高

5.數(shù)據(jù)庫(kù)系統(tǒng)的數(shù)據(jù)獨(dú)立性體現(xiàn)在(b)o

a.不會(huì)因?yàn)閿?shù)據(jù)的變化而影響到應(yīng)用程序

b.不會(huì)因?yàn)橄到y(tǒng)數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)與數(shù)據(jù)邏輯結(jié)構(gòu)的變化而

影響應(yīng)用程序

c.不會(huì)因?yàn)榇鎯?chǔ)策略的變化而影響存儲(chǔ)結(jié)構(gòu)

d■不會(huì)因?yàn)槟承┐鎯?chǔ)結(jié)構(gòu)的變化而影響其他的存儲(chǔ)結(jié)構(gòu)

6.描述數(shù)據(jù)庫(kù)全體數(shù)據(jù)的全局邏輯結(jié)構(gòu)和特性的是

(a)o

a,模式b.內(nèi)模式c,外模式d.用戶模式

7.要保證數(shù)據(jù)庫(kù)的數(shù)據(jù)獨(dú)立性,需要修改的是(c)o

a.模式與外模式b.模式與內(nèi)模式

c.三層之間的兩種映射d.三層模式

8.要保證數(shù)據(jù)庫(kù)的邏輯數(shù)據(jù)獨(dú)立性,需要修改的是

(a)o

a.模式與外模式的映射b.模式與內(nèi)模式之間的映射

c.模式d.三層模式

9.用戶或應(yīng)用程序看到的那部分局部邏輯結(jié)構(gòu)和特征

的描述是(c),它是模式的邏輯子集。

a.模式b.物理模式c,子模式d內(nèi)模式

10.下述(d)不是dba數(shù)據(jù)庫(kù)管理員的職責(zé)。

a.完整性約束說明b.定義數(shù)據(jù)庫(kù)模式

c.數(shù)據(jù)庫(kù)安全d.數(shù)據(jù)庫(kù)管理系統(tǒng)設(shè)計(jì)

選擇題答案:

(1)c(2)a(3)d(4)c(5)b

(6)a(7)c(8)a(9)c(10)d

二、簡(jiǎn)答題

1.試述數(shù)據(jù)、數(shù)據(jù)庫(kù)、數(shù)據(jù)庫(kù)系統(tǒng)、數(shù)據(jù)庫(kù)管理系統(tǒng)

的概念。

數(shù)據(jù):

描述事物的符號(hào)記錄稱為數(shù)據(jù)。數(shù)據(jù)的種類有文字、圖

形、圖象、聲音、正文等等。數(shù)據(jù)與其語(yǔ)義是不可分的。

*解析:

在現(xiàn)代計(jì)算機(jī)系統(tǒng)中數(shù)據(jù)的概念是廣義的。早期的計(jì)算

機(jī)系統(tǒng)主要用于科學(xué)計(jì)算,處理的數(shù)據(jù)是整數(shù)、實(shí)數(shù)、浮點(diǎn)

數(shù)等傳統(tǒng)數(shù)學(xué)中的數(shù)據(jù)等?,F(xiàn)在計(jì)算機(jī)能存儲(chǔ)和處理的對(duì)象

十分廣泛,表示這些對(duì)象的數(shù)據(jù)也越來越復(fù)雜。

數(shù)據(jù)與其語(yǔ)義是不可分的。500這個(gè)數(shù)字可以表示一件

物品的價(jià)格是500元,也可以表示一個(gè)學(xué)術(shù)會(huì)議參加的人數(shù)

有500人。還可以表示一袋奶粉重500克。

數(shù)據(jù)庫(kù):

數(shù)據(jù)庫(kù)是長(zhǎng)期儲(chǔ)存在計(jì)算機(jī)內(nèi)、有組織的、可共享的數(shù)

據(jù)集合。數(shù)據(jù)庫(kù)中的數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和儲(chǔ)

存,具有較小的冗余度、較高的數(shù)據(jù)獨(dú)立性和易擴(kuò)展性,并

可為各種用戶共享。

*解析:

簡(jiǎn)單地講,數(shù)據(jù)數(shù)據(jù)庫(kù)數(shù)據(jù)具有永久儲(chǔ)存、有組織和可

共享三個(gè)特點(diǎn)。

數(shù)據(jù)模型是數(shù)據(jù)庫(kù)的核心概念。每個(gè)數(shù)據(jù)庫(kù)中數(shù)據(jù)的都

是按照某一種數(shù)據(jù)模型來組織的。

數(shù)據(jù)庫(kù)系統(tǒng):

數(shù)據(jù)庫(kù)系統(tǒng)(dbs)是指在計(jì)算機(jī)系統(tǒng)中引入數(shù)據(jù)庫(kù)后

的系統(tǒng)構(gòu)成。數(shù)據(jù)庫(kù)系統(tǒng)由數(shù)據(jù)庫(kù)、數(shù)據(jù)庫(kù)管理系統(tǒng)(及其

開發(fā)工具)、應(yīng)用系統(tǒng)、數(shù)據(jù)庫(kù)管理員構(gòu)成。

*解析:

數(shù)據(jù)庫(kù)系統(tǒng)和數(shù)據(jù)庫(kù)是兩個(gè)概念。數(shù)據(jù)庫(kù)系統(tǒng)是一個(gè)人

-機(jī)系統(tǒng),數(shù)據(jù)庫(kù)是數(shù)據(jù)庫(kù)系統(tǒng)的一個(gè)組成部分。但是在日常

工作中人們常常把把數(shù)據(jù)庫(kù)系統(tǒng)簡(jiǎn)稱為數(shù)據(jù)庫(kù)。希望讀者能

夠從人們講話或文章的上下文中區(qū)分“數(shù)據(jù)庫(kù)系統(tǒng)”和“數(shù)

據(jù)庫(kù)”。

不要引起混淆。

數(shù)據(jù)庫(kù)管理系統(tǒng):

數(shù)據(jù)庫(kù)管理系統(tǒng)(dbms)是位于用戶與操作系統(tǒng)之間的

一層數(shù)據(jù)管理軟件。用于科學(xué)地組織和存儲(chǔ)數(shù)據(jù)、高效地獲

取和維護(hù)數(shù)據(jù)。dbms主要功能包括數(shù)據(jù)定義功能、數(shù)據(jù)操

縱功能、數(shù)據(jù)庫(kù)的運(yùn)行管理功能、數(shù)據(jù)庫(kù)的建立和維護(hù)功能。

解析:

dbms是一個(gè)大型復(fù)雜的軟件系統(tǒng)。是計(jì)算機(jī)中的基礎(chǔ)

軟件。目前,專門研制dbms的廠商及其研制的dbms產(chǎn)品

很多。著名的有美國(guó)ibm公司的db2關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)、

ims層次數(shù)據(jù)庫(kù)管理系統(tǒng);美國(guó)oracle公司的oracle關(guān)系

數(shù)據(jù)庫(kù)管理系統(tǒng);Sybase公司的Sybase關(guān)系數(shù)據(jù)庫(kù)管理系

統(tǒng);美國(guó)微軟公司的sqlserver關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)等等。

2.使用數(shù)據(jù)庫(kù)系統(tǒng)有什么好處?

使用數(shù)據(jù)庫(kù)系統(tǒng)的好處是由數(shù)據(jù)庫(kù)管理系統(tǒng)的特點(diǎn)或

優(yōu)點(diǎn)決定的。

使用數(shù)據(jù)庫(kù)系統(tǒng)的好處很多,例如可以大大提高應(yīng)用開

發(fā)的效率,方便用戶的使用,減輕數(shù)據(jù)庫(kù)系統(tǒng)管理人員維護(hù)

的負(fù)擔(dān)等。

為什么有這些好處,可以結(jié)合第5題來回答。

使用數(shù)據(jù)庫(kù)系統(tǒng)可以大大提高應(yīng)用開發(fā)的效率。因?yàn)樵?/p>

數(shù)據(jù)庫(kù)系統(tǒng)中應(yīng)用程序不必考慮數(shù)據(jù)的定義、存儲(chǔ)和數(shù)據(jù)存

取的具體路徑,這些工作都由dbms來完成。用一個(gè)通俗的

比喻,使用了dbms就如有了一個(gè)好參謀好助手,許多具體

的技術(shù)工作都由這個(gè)助手來完成。開發(fā)人員就可以專注于應(yīng)

用邏輯的設(shè)計(jì)而不必為管理數(shù)據(jù)的許許多多復(fù)雜的細(xì)節(jié)操

心。

還有,當(dāng)應(yīng)用邏輯改變,數(shù)據(jù)的邏輯結(jié)構(gòu)需要改變時(shí),

由于數(shù)據(jù)庫(kù)系統(tǒng)提供了數(shù)據(jù)與程序之間的獨(dú)立性。數(shù)據(jù)邏輯

結(jié)構(gòu)的改變是dba的責(zé)任,開發(fā)人員不必修改應(yīng)用程序,或

者只需要修改很少的應(yīng)用程序。從而既簡(jiǎn)化了應(yīng)用程序的編

制,又大大減少了應(yīng)用程序的維護(hù)和修改。

使用數(shù)據(jù)庫(kù)系統(tǒng)可以減輕數(shù)據(jù)庫(kù)系統(tǒng)管理人員維護(hù)系

統(tǒng)的負(fù)擔(dān)。因?yàn)閐bms在數(shù)據(jù)庫(kù)建立、運(yùn)用和維護(hù)時(shí)對(duì)數(shù)據(jù)

庫(kù)進(jìn)行統(tǒng)一的管理和控制,包括數(shù)據(jù)的完整性、安全性,多

用戶并發(fā)控制,故障恢復(fù)等等都由dbms執(zhí)行。

總之,使用數(shù)據(jù)庫(kù)系統(tǒng)的優(yōu)點(diǎn)是很多的,既便于數(shù)據(jù)的

集中管理,控制數(shù)據(jù)冗余,可以提高數(shù)據(jù)的利用率和一致性,

又有利于應(yīng)用程序的開發(fā)和維護(hù)。讀者可以在自己今后的工

作中結(jié)合具體應(yīng)用,認(rèn)真加以體會(huì)和總結(jié)。

3.試述文件系統(tǒng)與數(shù)據(jù)庫(kù)系統(tǒng)的區(qū)別和聯(lián)系。

文件系統(tǒng)與數(shù)據(jù)庫(kù)系統(tǒng)的區(qū)別:

文件系統(tǒng)面向某一應(yīng)用程序,共享性差、冗余度大,獨(dú)

立性差,紀(jì)錄內(nèi)有結(jié)構(gòu)、整體無結(jié)構(gòu),應(yīng)用程序自己控制。

數(shù)據(jù)庫(kù)系統(tǒng)面向現(xiàn)實(shí)世界,共享性高、冗余度小,具有

高度的物理獨(dú)立性和一定的邏輯獨(dú)立性,整體結(jié)構(gòu)化,用數(shù)

據(jù)模型描述,由數(shù)據(jù)庫(kù)管理系統(tǒng)提供數(shù)據(jù)安全性、完整性、

并發(fā)控制和恢復(fù)能力。

讀者可以參考《概論》書中表1.1中的有關(guān)內(nèi)容。

文件系統(tǒng)與數(shù)據(jù)庫(kù)系統(tǒng)的聯(lián)系是:

文件系統(tǒng)與數(shù)據(jù)庫(kù)系統(tǒng)都是計(jì)算機(jī)系統(tǒng)中管理數(shù)據(jù)的

軟件。

*解析:

文件系統(tǒng)是操作系統(tǒng)的重要組成部分,而dbms是獨(dú)立

于操作系統(tǒng)的軟件。但是dbms是在操作系統(tǒng)的基礎(chǔ)上實(shí)現(xiàn)

的。數(shù)據(jù)庫(kù)中數(shù)據(jù)的組織和存儲(chǔ)是通過操作系統(tǒng)中文件系統(tǒng)

來實(shí)現(xiàn)的。

讀者可以參考書中第十一章《數(shù)據(jù)庫(kù)管理系統(tǒng)》?;蛘?/p>

說,讀者進(jìn)一步學(xué)習(xí)數(shù)據(jù)庫(kù)管理系統(tǒng)實(shí)現(xiàn)的有關(guān)課程(第十

一章只是dbms實(shí)現(xiàn)技術(shù)的概述)后可以對(duì)本題有深入的理

解和全面的解答。因?yàn)閐bms的實(shí)現(xiàn)與操作系統(tǒng)中的文件系

統(tǒng)是緊密相關(guān)的。例如,數(shù)據(jù)庫(kù)實(shí)現(xiàn)的基礎(chǔ)是文件,對(duì)數(shù)據(jù)

庫(kù)的任何操作最終要轉(zhuǎn)化為對(duì)文件的操作。所以在dbms實(shí)

現(xiàn)中數(shù)據(jù)庫(kù)物理組織的基本問題是如何利用或如何選擇操

作系統(tǒng)提供的基本的文件組織方法。這里我們就不具體展開

了。

4.舉出適合用文件系統(tǒng)而不是數(shù)據(jù)庫(kù)系統(tǒng)的例子;再

舉出適合用數(shù)據(jù)庫(kù)系統(tǒng)的應(yīng)用例子。

?適用于文件系統(tǒng)而不是數(shù)據(jù)庫(kù)系統(tǒng)的應(yīng)用例子

數(shù)據(jù)的備份,軟件或應(yīng)用程序使用過程中的臨時(shí)數(shù)據(jù)存

儲(chǔ)一般使用文件比較合適。

早期功能比較簡(jiǎn)單、比較固定的應(yīng)用系統(tǒng)也適合用文

件系統(tǒng)。

?適用于數(shù)據(jù)庫(kù)系統(tǒng)而非文件系統(tǒng)的應(yīng)用例子

目前,幾乎所有企業(yè)或部門的信息系統(tǒng)都以數(shù)據(jù)庫(kù)系統(tǒng)

為基礎(chǔ),都使用數(shù)據(jù)庫(kù)。如一個(gè)工廠的管理信息系統(tǒng)(其中

會(huì)包括許多子系統(tǒng),如庫(kù)存管理系統(tǒng)、物資采購(gòu)系統(tǒng)、作業(yè)

調(diào)度系統(tǒng)、設(shè)備管理系統(tǒng)、人事管理系統(tǒng)等等),還比如學(xué)

校的學(xué)生管理系統(tǒng),人事管理系統(tǒng),圖書館的圖書管理系統(tǒng)

等等都適合用數(shù)據(jù)庫(kù)系統(tǒng)。

希望同學(xué)們能舉出自己了解的應(yīng)用例子。

5.試述數(shù)據(jù)庫(kù)系統(tǒng)的特點(diǎn)。

數(shù)據(jù)庫(kù)系統(tǒng)的主要特點(diǎn)有:

一、數(shù)據(jù)結(jié)構(gòu)化

數(shù)據(jù)庫(kù)系統(tǒng)實(shí)現(xiàn)整體數(shù)據(jù)的結(jié)構(gòu)化,這是數(shù)據(jù)庫(kù)的主要

特征之一,也是數(shù)據(jù)庫(kù)系統(tǒng)與文件系統(tǒng)的本質(zhì)區(qū)別。

*解析:注意這里“整體”兩個(gè)字。在數(shù)據(jù)庫(kù)系統(tǒng)中,

數(shù)據(jù)不再針對(duì)某一個(gè)應(yīng)用,而是面向全組織,具有整體的結(jié)

構(gòu)化。不僅數(shù)據(jù)是結(jié)構(gòu)化的,而且數(shù)據(jù)的存取單位即一次可

以存取數(shù)據(jù)的大小也很靈活??梢孕〉侥骋粋€(gè)數(shù)據(jù)項(xiàng)(如一

個(gè)學(xué)生的姓名),大到一組記錄(成千上萬個(gè)學(xué)生記錄)。而

在文件系統(tǒng)中,數(shù)據(jù)的存取單位只有一個(gè):記錄。如一個(gè)學(xué)

生的完整記錄。

二、數(shù)據(jù)的共享性高,冗余度低,易擴(kuò)充

數(shù)據(jù)庫(kù)的數(shù)據(jù)不再面向某個(gè)應(yīng)用而是面向整個(gè)系統(tǒng),因

此可以被多個(gè)用戶、多個(gè)應(yīng)用、用多種不同的語(yǔ)言共享使用。

由于數(shù)據(jù)面向整個(gè)系統(tǒng),是有結(jié)構(gòu)的數(shù)據(jù),不僅可以被多個(gè)

應(yīng)用共享使用,而且容易增加新的應(yīng)用,這就使得數(shù)據(jù)庫(kù)系

統(tǒng)彈性大,易于擴(kuò)充。

*解析:

數(shù)據(jù)共享可以大大減少數(shù)據(jù)冗余,節(jié)約存儲(chǔ)空間,同時(shí)

還能夠避免數(shù)據(jù)之間的不相容性與不一致性。

所謂“數(shù)據(jù)面向某個(gè)應(yīng)用”是指數(shù)據(jù)結(jié)構(gòu)是針對(duì)某個(gè)應(yīng)

用設(shè)計(jì)的,只被這個(gè)應(yīng)用程序或應(yīng)用系統(tǒng)使用??梢哉f數(shù)據(jù)

是某個(gè)應(yīng)用的“私有資源”。

所謂“彈性大”是指系統(tǒng)容易擴(kuò)充也容易收縮,即應(yīng)用

增加或減少時(shí)不必修改整個(gè)數(shù)據(jù)庫(kù)的結(jié)構(gòu),或者只要做很少

的修改。

我們可以取整體數(shù)據(jù)的各種子集用于不同的應(yīng)用系統(tǒng),

當(dāng)應(yīng)用需求改變或增加時(shí),只要重新選取不同的子集或加上

一部分?jǐn)?shù)據(jù)便可以滿足新的需求。

三、數(shù)據(jù)獨(dú)立性高

數(shù)據(jù)獨(dú)立性包括數(shù)據(jù)的物理獨(dú)立性和數(shù)據(jù)的邏輯獨(dú)立

性。

數(shù)據(jù)庫(kù)管理系統(tǒng)的模式結(jié)構(gòu)和二級(jí)映象功能保證了數(shù)

據(jù)庫(kù)中的數(shù)據(jù)具有很高的物理獨(dú)立性和邏輯獨(dú)立性。

*解析:

所謂“獨(dú)立性”即相互不依賴。數(shù)據(jù)獨(dú)立性是指數(shù)據(jù)和

程序相互不依賴。即數(shù)據(jù)的邏輯結(jié)構(gòu)或物理結(jié)構(gòu)改變了,程

序不會(huì)跟著改變。數(shù)據(jù)與程序的獨(dú)立,把數(shù)據(jù)的定義從程序

中分離出去,加上數(shù)據(jù)的存取又由dbms負(fù)責(zé),簡(jiǎn)化了應(yīng)用

程序的編制,大大減少了應(yīng)用程序的維護(hù)和修改。

四、數(shù)據(jù)由dbms統(tǒng)一管理和控制

數(shù)據(jù)庫(kù)的共享是并發(fā)的共享,即多個(gè)用戶可以同時(shí)存取

數(shù)據(jù)庫(kù)中的數(shù)據(jù)甚至可以同時(shí)存取數(shù)據(jù)庫(kù)中同一個(gè)數(shù)據(jù)。為

此,dbms必須提供統(tǒng)一的數(shù)據(jù)控制功能,包括數(shù)據(jù)的安全

性保護(hù),數(shù)據(jù)的完整性檢查,并發(fā)控制和數(shù)據(jù)庫(kù)恢復(fù)。

*解析:

dbms數(shù)據(jù)控制功能包括四個(gè)方面:

數(shù)據(jù)的安全性保護(hù):保護(hù)數(shù)據(jù)以防止不合法的使用造成

的數(shù)據(jù)的泄密和破壞;

數(shù)據(jù)的完整性檢查:將數(shù)據(jù)控制在有效的范圍內(nèi)或保證

數(shù)據(jù)之間滿足一定的關(guān)系;

并發(fā)控制:對(duì)多用戶的并發(fā)操作加以控制和協(xié)調(diào),保證

并發(fā)操作的正確性;

數(shù)據(jù)庫(kù)恢復(fù):當(dāng)計(jì)算機(jī)系統(tǒng)發(fā)生硬件故障、軟件故障,

或者由于操作員的失誤以及故意的破壞影響數(shù)據(jù)庫(kù)中數(shù)據(jù)

的正確性,甚至造成數(shù)據(jù)庫(kù)部分或全部數(shù)據(jù)的丟失時(shí),能將

數(shù)據(jù)庫(kù)從錯(cuò)誤狀態(tài)恢復(fù)到某一已知的正確狀態(tài)(亦稱為完整

狀態(tài)或一致狀態(tài))。

下面我們可以得到“什么是數(shù)據(jù)庫(kù)”的一個(gè)定義:

數(shù)據(jù)庫(kù)是長(zhǎng)期存儲(chǔ)在計(jì)算機(jī)內(nèi)有組織的大量的共享的

數(shù)據(jù)集合。它可以供各種用戶共享,具有最小冗余度和較高

的數(shù)據(jù)獨(dú)立性。dbms在數(shù)據(jù)庫(kù)建立、運(yùn)用和維護(hù)時(shí)對(duì)數(shù)據(jù)

庫(kù)進(jìn)行統(tǒng)一控制,以保證數(shù)據(jù)的完整性、安全性,并在多用

戶同時(shí)使用數(shù)據(jù)庫(kù)時(shí)進(jìn)行并發(fā)控制,在發(fā)生故障后對(duì)系統(tǒng)進(jìn)

行恢復(fù)。

數(shù)據(jù)庫(kù)系統(tǒng)的出現(xiàn)使信息系統(tǒng)從以加工數(shù)據(jù)的程序?yàn)?/p>

中心轉(zhuǎn)向圍繞共享的數(shù)據(jù)庫(kù)為中心的新階段。

6.數(shù)據(jù)庫(kù)管理系統(tǒng)的主要功能有哪些?

①數(shù)據(jù)庫(kù)定義功能;

②數(shù)據(jù)存取功能;

③數(shù)據(jù)庫(kù)運(yùn)行管理;

④數(shù)據(jù)庫(kù)的建立和維護(hù)功能。

7.試述數(shù)據(jù)模型的概念、數(shù)據(jù)模型的作用和數(shù)據(jù)模型

的三個(gè)要素。

數(shù)據(jù)模型是數(shù)據(jù)庫(kù)中用來對(duì)現(xiàn)實(shí)世界進(jìn)行抽象的工具,

是數(shù)據(jù)庫(kù)中用于提供信息表示和操作手段的形式構(gòu)架。

一般地講,數(shù)據(jù)模型是嚴(yán)格定義的概念的集合。這些概

念精確地描述系統(tǒng)的靜態(tài)特性、動(dòng)態(tài)特性和完整性約束條

件。因此數(shù)據(jù)模型通常由數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作和完整性約束

三部分組成。

①數(shù)據(jù)結(jié)構(gòu):是所研究的對(duì)象類型的集合,是對(duì)系統(tǒng)的

靜態(tài)特性的描述。

②數(shù)據(jù)操作:是指對(duì)數(shù)據(jù)庫(kù)中各種對(duì)象(型)的實(shí)例(值)

允許進(jìn)行的操作的集合,包括操作及有關(guān)的操作規(guī)則,是對(duì)

系統(tǒng)動(dòng)態(tài)特性的描述。

③數(shù)據(jù)的約束條件:是完整性規(guī)則的集合,完整性規(guī)則

是給定的數(shù)據(jù)模型中數(shù)據(jù)及其聯(lián)系所具有的制約和依存規(guī)

則,用以限定符合數(shù)據(jù)模型的數(shù)據(jù)庫(kù)狀態(tài)以及狀態(tài)的變化,

以保證數(shù)據(jù)的正確、有效、相容。

*解析:

數(shù)據(jù)模型是數(shù)據(jù)庫(kù)系統(tǒng)中最重要的概念之一。同學(xué)們必

須通過《概論》的學(xué)習(xí)真正掌握

數(shù)據(jù)模型的概念和作用。

數(shù)據(jù)模型是數(shù)據(jù)庫(kù)系統(tǒng)的基礎(chǔ)。任何一個(gè)dbms都以某

一個(gè)數(shù)據(jù)模型為基礎(chǔ),或者說支持某一個(gè)數(shù)據(jù)模型。

數(shù)據(jù)庫(kù)系統(tǒng)中模型有不同的層次。根據(jù)模型應(yīng)用的不同

目的,可以將模型分成兩類或說兩個(gè)層次:一是概念模型,

是按用戶的觀點(diǎn)來對(duì)數(shù)據(jù)和信息建模,用于信息世界的建

模,強(qiáng)調(diào)語(yǔ)義表達(dá)能力,概念簡(jiǎn)單清晰;另一是數(shù)據(jù)模型,

是按計(jì)算機(jī)系統(tǒng)的觀點(diǎn)對(duì)數(shù)據(jù)建模,用于機(jī)器世界,人們可

以用它定義、操縱數(shù)據(jù)庫(kù)中的數(shù)據(jù)。一般需要有嚴(yán)格的形式

化定義和一組嚴(yán)格定義了語(yǔ)法和語(yǔ)義的語(yǔ)言,并有一些規(guī)定

和限制,便于在機(jī)器上實(shí)現(xiàn)。

8.試述概念模型的作用。

概念模型實(shí)際上是現(xiàn)實(shí)世界到機(jī)器世界的一個(gè)中間層

次。概念模型用于信息世界的建模,是現(xiàn)實(shí)世界到信息世界

的第一層抽象,是數(shù)據(jù)庫(kù)設(shè)計(jì)人員進(jìn)行數(shù)據(jù)庫(kù)設(shè)計(jì)的有力工

具,也是數(shù)據(jù)庫(kù)設(shè)計(jì)人員和用戶之間進(jìn)行交流的語(yǔ)言。

9.定義并解釋概念模型中以下術(shù)語(yǔ):

實(shí)體,實(shí)體型,實(shí)體集,屬性,碼,實(shí)體聯(lián)系圖(e-r

圖)

實(shí)體:客觀存在并可以相互區(qū)分的事物叫實(shí)體。

實(shí)體型:具有相同屬性的實(shí)體具有相同的特征和性質(zhì),

用實(shí)體名及其屬性名集合來抽象和刻畫同類實(shí)體稱為實(shí)體

型。

實(shí)體集:同型實(shí)體的集合稱為實(shí)體集。

屬性:實(shí)體所具有的某一特性,一個(gè)實(shí)體可由若干個(gè)屬

性來刻畫。

碼:唯一標(biāo)識(shí)實(shí)體的屬性集稱為碼。

實(shí)體聯(lián)系圖:e-r圖提供了表示實(shí)體型、屬性和聯(lián)系的

方法:

?實(shí)體型:用矩形表示,矩形框內(nèi)寫明實(shí)體名。

?屬性:用橢圓形表示,并用無向邊將其與相應(yīng)的實(shí)

體連接起來。

?聯(lián)系:用菱形表示,菱形框內(nèi)寫明聯(lián)系名,并用無向

邊分別與有關(guān)實(shí)體連接起來,同時(shí)在無向邊旁標(biāo)上聯(lián)系的類

型(1:1,l:n或m:n)o

10.試給出三個(gè)實(shí)際部門的e-r圖,要求實(shí)體型之間具

有一對(duì)一,一對(duì)多,多對(duì)多各種不同的聯(lián)系。

第二章關(guān)系數(shù)據(jù)庫(kù)

一、選擇題

bl.下面的選項(xiàng)不是關(guān)系數(shù)據(jù)庫(kù)基本特征的是()o

a.不同的列應(yīng)有不同的數(shù)據(jù)類型

b.不同的列應(yīng)有不同的列名

c.與行的次序無關(guān)

d■與列的次序無關(guān)

d2.一個(gè)關(guān)系只有一*個(gè)()。

a.候選碼b.外碼c.超碼d.主碼

c3.關(guān)系模型中,一個(gè)碼是()o

a.可以由多個(gè)任意屬性組成

b.至多由一個(gè)屬性組成

c.可有多個(gè)或者一個(gè)其值能夠唯一表示該關(guān)系模式中任

何元組的屬性組成

d.以上都不是

d4.現(xiàn)有如下關(guān)系:

患者(患者編號(hào),患者姓名,性別,出生日起,所在單

位)

醫(yī)療(患者編號(hào),患者姓名,醫(yī)生編號(hào),醫(yī)生姓名,診

斷日期,診斷結(jié)果)

其中,醫(yī)療關(guān)系中的外碼是()o

a.患者編號(hào)b.患者姓名

c.患者編號(hào)和患者姓名d.醫(yī)生編號(hào)和患者編號(hào)

d5.現(xiàn)有一個(gè)關(guān)系:借閱(書號(hào),書名,庫(kù)存數(shù),讀者

號(hào),借期,還期),假如同一本書允許一個(gè)讀者多次借閱,

但不能同時(shí)對(duì)一種書借多本,則該關(guān)系模式的外碼是()o

a.書號(hào)b.讀者號(hào)

c.書號(hào)+讀者號(hào)d.書號(hào)+讀者號(hào)+借期

6.關(guān)系模型中實(shí)現(xiàn)實(shí)體間n:m聯(lián)系是通過增加一個(gè)

()O

a.關(guān)系實(shí)現(xiàn)b.屬性實(shí)現(xiàn)c.關(guān)系或一個(gè)屬性實(shí)現(xiàn)d.

關(guān)系和一個(gè)屬性實(shí)現(xiàn)

b7.關(guān)系代數(shù)運(yùn)算是以()為基礎(chǔ)的運(yùn)算。

a,關(guān)系運(yùn)算b.謂詞演算c.集合運(yùn)算d代數(shù)運(yùn)算

a8.關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)應(yīng)能實(shí)現(xiàn)的專門關(guān)系運(yùn)算包

括()o

a,排序、索引、統(tǒng)計(jì)b.選擇、投影、連接

c.關(guān)聯(lián)、更新、排序d.顯示、打印、制表

c9.五種基本關(guān)系代數(shù)運(yùn)算是()o

a.U—X0n

b.U-oJi

c.UAXoJi

d.unon

c10.關(guān)系代數(shù)表達(dá)式的優(yōu)化策略中,首先要做的是

()O

a.對(duì)文件進(jìn)行預(yù)處理

b.盡早執(zhí)行選擇運(yùn)算

c.執(zhí)行笛卡爾積運(yùn)算

d投影運(yùn)算

C11.關(guān)系數(shù)據(jù)庫(kù)中的投影操作是指從關(guān)系中()。

a.抽出特定記錄b.抽出特定字段

c.建立相應(yīng)的影像d.建立相應(yīng)的圖形

c12.從一個(gè)數(shù)據(jù)庫(kù)文件中取出滿足某個(gè)條件的所有記

錄形成一個(gè)新的數(shù)據(jù)庫(kù)文件的操作是()操作。

a.投影b.聯(lián)接c.選擇d.復(fù)制

c13.關(guān)系代數(shù)中的聯(lián)接操作是由()操作組合而成。

a.選擇和投影b.選擇和笛卡爾積

c.投影、選擇、笛卡爾積d.投影和笛卡爾積

c14.自然聯(lián)接是構(gòu)成新關(guān)系的有效方法。一般情況下,

當(dāng)對(duì)關(guān)系r和s是用自然聯(lián)接時(shí),要求r和s含有一個(gè)或者

多個(gè)共有的()。

a.記錄b.行c.屬性d元組

b15.假設(shè)有關(guān)系r和s,在下列的關(guān)系運(yùn)算中,()運(yùn)

算不要求:“r和s具有相同的元數(shù),且它們的對(duì)應(yīng)屬性的數(shù)

據(jù)類型也相同”。

a.rAsb.rUsc.r—sd.rXs

a16.假設(shè)有關(guān)系r和s,關(guān)系代數(shù)表達(dá)式r—(r-s)

表示的是()o

a.rClsb.rUsc.r—sd.rXs

17.下面列出的關(guān)系代數(shù)表達(dá)是中,那些式子能夠成立

()O

i.ofl(of2(e))=oflAf2(e)

ii.el°°e2=e2°°el

iii.(elooeZJooeS=el°°(e2°°e3)

iv.ofl(of2(e))=of2(ofl(e))

a.全部b.ii和iiic.沒有d.i和iv

18.下面四個(gè)關(guān)系表達(dá)式是等價(jià)的,是判別它們的執(zhí)行

效率()。

el=na(ob=cAd=ez(rXs))

e2=na(ab=c(rXad=ez(s))

e3=na(r°°b=cod=e'(s))

e3=na(ad=e'(r°°b=cs))

a.e3最快b.e2最快c.e4最快d.el最快

19.有關(guān)系sc(s_id,c_id,age,score),查找年齡大

于22歲的學(xué)生的學(xué)號(hào)和分?jǐn)?shù),正確的關(guān)系代數(shù)表達(dá)式是

()

i.ns_id,score(。age>22(sc))

ii.oage>22(ns_id,score(sc))

iii.ns_id,score(oage>22(ns_id,score,age

(sc)))

a.i和iib.只有ii正確c,只有i正確d.i和iii

正確

選擇題答案:

(1)a(2)d⑶c(4)a⑸d

(6)a(7)c(8)b(9)a(10)b

(11)b(12)c(13)b(14)c(15)d

(16)a(17)c(18)a(19)d

二、簡(jiǎn)答題

1.試述關(guān)系模型的三個(gè)組成部分。

2.試述關(guān)系數(shù)據(jù)語(yǔ)言的特點(diǎn)和分類。

3.設(shè)有一個(gè)spj數(shù)據(jù)庫(kù),包括s,p,j,spj四個(gè)關(guān)系模

式:

s(sno,sname,status,city);

p(pno,pname,color,weight);

j(jno,jname,city);

spj(sno,pno,jno,qty);

供應(yīng)商表s由供應(yīng)商代碼(sno)、供應(yīng)商姓名(sname)、

供應(yīng)商狀態(tài)(status)>供應(yīng)商所在城市(city)組成;零件

表p由零件代碼(pno)>零件名(pname)>顏色(color)、

重量(weight)組成;工程項(xiàng)目表j由工程項(xiàng)目代碼(jno)、

工程項(xiàng)目名(jname)、工程項(xiàng)目所在城市(city)組成;供

應(yīng)情況表spj由供應(yīng)商代碼(sno)、零件代碼(pno)>工程

項(xiàng)目代碼(jno)、供應(yīng)數(shù)量(qty)組成,表示某供應(yīng)商供

應(yīng)某種零件給某工程項(xiàng)目的數(shù)量為qtyo

試用關(guān)系代數(shù)完成如下查詢:

(1)求供應(yīng)工程jl零件的供應(yīng)商號(hào)碼sno;

(2)求供應(yīng)工程jl零件pl的供應(yīng)商號(hào)碼sno;

(3)求供應(yīng)工程jl零件為紅色的供應(yīng)商號(hào)碼sno;

(4)求沒有使用天津供應(yīng)商生產(chǎn)的紅色零件的工程號(hào)

jno;

(5)求至少用了供應(yīng)商si所供應(yīng)的全部零件的工程

號(hào)jnoo

4.定義并理解下列術(shù)語(yǔ),說明它們之間的聯(lián)系與區(qū)別:

(1)域,笛卡爾積,關(guān)系,元組,屬性

(2)主碼,候選碼,外碼

(3)關(guān)系模式,關(guān)系,關(guān)系數(shù)據(jù)庫(kù)

5,試述關(guān)系模型的完整性規(guī)則。在參照完整性中,為什

么外碼屬性的值有時(shí)也可以為空?什么情況下才可以為

空?

6.試述等值連接與自然連接的區(qū)別和聯(lián)系。

7.關(guān)系代數(shù)的基本運(yùn)算有哪些?

8.試用關(guān)系代數(shù)的基本運(yùn)算來表示其他運(yùn)算。

第三章sql語(yǔ)言

一、選擇題

bLsql語(yǔ)言是()的語(yǔ)言,容易學(xué)習(xí)。

a.過程化b.非過程化

c.格式化d.導(dǎo)航式

c2.sql語(yǔ)言的數(shù)據(jù)操縱語(yǔ)句包括select、insert、

update>delete等。其中最重要的,也是使用最頻繁的語(yǔ)句

是()。

a.selectb.insert

c.updated.delete

c3.在視圖上不能完成的操作是()。

a.更新視圖b.查詢

c.在視圖上定義新的表d.在視圖上定義新的視圖

b4.sql語(yǔ)言集數(shù)據(jù)查詢、數(shù)據(jù)操縱、數(shù)據(jù)定義和數(shù)據(jù)控

制功能于一體,其中,create>drop、alter語(yǔ)句是實(shí)現(xiàn)哪

種功能()o

a.數(shù)據(jù)查詢b.數(shù)據(jù)操縱

c.數(shù)據(jù)定義d數(shù)據(jù)控制

b5.sql語(yǔ)言中,刪除一個(gè)視圖的命令是()o

a.delete

b.drop

c.clear

dremove

a6.在sql語(yǔ)言中的視圖view是數(shù)據(jù)庫(kù)的()。

a.外模式b.模式c內(nèi)模式d存儲(chǔ)模式

d7.下列的sql語(yǔ)句中,()不是數(shù)據(jù)定義語(yǔ)句。

a.createtableb.dropview

c.createviewd.grant

d8.若要撤銷數(shù)據(jù)庫(kù)中已經(jīng)存在的表s,可用()o

a.deletetablesb.deletes

c.droptablesd.drops

c9.若要在基本表s中增加一列cn(課程名),可用

()o

a.addtables(cnchar(8))

b.addtablesalter(cnchar(8))

c.altertablesadd(cnchar(8))

daltertables(addcnchar(8))

a10.學(xué)生關(guān)系模式s(s#,sname,sex,age),s

的屬性分別表示學(xué)生的學(xué)號(hào)、姓名、性別、年齡。要在表s

中刪除一個(gè)屬性“年齡”,可選用的sql語(yǔ)句是()。

a.deleteagefroms

b.altertablesdropage

c.updatesage

d.altertables'age'

11.有關(guān)系s(s#,sname,sage),c(c#,cname),

sc(s#,c#,grade)o其中s#是學(xué)生號(hào),sname是學(xué)生

姓名,sage是學(xué)生年齡,c#是課程號(hào),cname是課程名

稱。要查詢選修“access”課的年齡不小于20的全體學(xué)生

姓名的sql語(yǔ)句是selectsnamefroms,c,scwhere子句。

這里的where子句的內(nèi)容是()。

a.s.s#=sc.s#andc.c#=sc.c#andsage>=20and

cname='access'

b.s.s#=sc.s#andc.c#=sc.c#andsagein>=20and

cnamein'access'

c.sagein>=20andcnamein'access'

d.sage>=20andcname=,access'

12.設(shè)關(guān)系數(shù)據(jù)庫(kù)中一個(gè)表s的結(jié)構(gòu)為s(sn,cn,

grade),其中sn為學(xué)生名,cn為課程名,二者均為字符型;

grade為成績(jī),數(shù)值型,取值范圍0—100。若要把“張二

的化學(xué)成績(jī)80分”插入s中,則可用()o

a.add

intos

values('張二','化學(xué)','80')

b.insert

intos

values('張二','化學(xué)','80')

c.add

intos

values('張二','化學(xué)',80)

d.insert

intos

values('張二化學(xué)',80)

13.設(shè)關(guān)系數(shù)據(jù)庫(kù)中一個(gè)表s的結(jié)構(gòu)為:s(sn,cn,

grade),其中sn為學(xué)生名,cn為課程名,二者均為字符型;

grade為成績(jī),數(shù)值型,取值范圍0—100。若要更正王二

的化學(xué)成績(jī)?yōu)?5分,則可用()。

a.updates

setgrade=85

wheresn='王二'andcn=,化學(xué)'

b.updates

setgrade='85'

wheresn='王二'andcn='化學(xué)'

c.updategrade=85

wheresn='王二'andcn=,化學(xué)'

d.updategrade=?85'

wheresn='王二'andcn='化學(xué)'

b14.在sql語(yǔ)言中,子查詢是()。

a.返回單表中數(shù)據(jù)子集的查詢語(yǔ)言

b.選取多表中字段子集的查詢語(yǔ)句

c.選取單表中字段子集的查詢語(yǔ)句

d.嵌入到另一個(gè)查詢語(yǔ)句之中的查詢語(yǔ)句

c15.sql是一種()語(yǔ)言。

a.高級(jí)算法b.人工智能

c.關(guān)系數(shù)據(jù)庫(kù)d.函數(shù)型

16.有關(guān)系s(s#,sname,sex),c(c#,cname),

sc(s#,c#,grade)o其中s#是學(xué)生號(hào),sname是學(xué)生

姓名,sex是性別,c#是課程號(hào),cname是課程名稱。要

查詢選修“數(shù)據(jù)庫(kù)”課的全體男生姓名的sql語(yǔ)句是select

snamefroms,c,scwhere子句。這里的where子句的內(nèi)

容是()o

a.s.s#=sc.s#andc.c#=sc.c#andsex='男'and

cname=,數(shù)據(jù)庫(kù),

b.s.s#=sc.s#andc.c#=sc.c#andsexin?男'and

cnamein,數(shù)據(jù)庫(kù),

c.sex'男'andcname'數(shù)據(jù)庫(kù)'

d.s.sex=,男'andcname=,數(shù)據(jù)庫(kù)'

17.若用如下的sql語(yǔ)句創(chuàng)建了一個(gè)表sc:

createtablesc(s#char(6)notnulLc#char(3)

notnull,scoreinteger,notechar(20));向sc表插入

如下行時(shí),()行可以被插入。

a.C201009','111\60,必修)

b.('200823','101',null,null)

c.(null/103\80/選修,)

d.('201132',null,86,'')

18.假設(shè)學(xué)生關(guān)系s(s#,sname,sex),課程關(guān)系c

(c#,cname),學(xué)生選課關(guān)系sc(s#,c#,grade)o要

查詢選修“computer”課的男生姓名,將涉及到關(guān)系(d)。

a.sb.s,scc.c,scd.s,c,sc

選擇題答案:

(1)b(2)a(3)c(4)c(5)b

(6)a(7)d(8)c(9)c(10)b

(11)a(12)d(13)a(14)d(15)c

(16)a(17)b(18)d

二、簡(jiǎn)答題

1.試述sql語(yǔ)言的特點(diǎn)。

答:

(1)綜合統(tǒng)一。sql語(yǔ)言集數(shù)據(jù)定義語(yǔ)言ddl、數(shù)據(jù)操

縱語(yǔ)言dmk數(shù)據(jù)控制語(yǔ)言del的功能于一體。

(2)高度非過程化。用sql語(yǔ)言進(jìn)行數(shù)據(jù)操作,只要

提出“做什么”,而無須指明“怎么做”,因此無需了解存取

路徑,存取路徑的選擇以及sql語(yǔ)句的操作過程由系統(tǒng)自動(dòng)

完成。

(3)面向集合的操作方式。sql語(yǔ)言采用集合操作方式,

不僅操作對(duì)象、查找結(jié)果可以是元組的集合,而且一次插入、

刪除、更新操作的對(duì)象也可以是元組的集合。

(4)以同一種語(yǔ)法結(jié)構(gòu)提供兩種使用方式。sql語(yǔ)言既

是自含式語(yǔ)言,又是嵌入式語(yǔ)言。作為自含式語(yǔ)言,它能夠

獨(dú)立地用于聯(lián)機(jī)交互的使用方式,也能夠嵌入到高級(jí)語(yǔ)言程

序中,供程序員設(shè)計(jì)程序時(shí)使用。

(5)語(yǔ)言簡(jiǎn)捷,易學(xué)易用。

2.試述sql的定義功能。

答:sql的數(shù)據(jù)定義功能包括定義表、定義視圖和定義

索引。

sql語(yǔ)言使用createtable語(yǔ)句定義建立基本表,;alter

table語(yǔ)句修改基本表定義,droptable語(yǔ)句刪除基本表;建

立索引使用createindex語(yǔ)句建立索引,dropindex語(yǔ)句

刪除索引表;sql語(yǔ)言使用createview命令建立視圖,drop

view語(yǔ)句刪除視圖。

3.用sql語(yǔ)句建立第3章習(xí)題3中的四個(gè)表。

答:對(duì)于s表:s(sno,sname,status,city);

建s表

createtables

(snochar(3),

snamechar(10),

statuschar(2),

citychar(10));

p(pno,pname,color,weight);

建p表

createtablep

(pnochar(3),

pnamechar(10),

cotorchar(4),

weightint);

j(jno,jname,city);

建j表

createtablej

(jnochar(3),

jnamechar(10),

citychar(10));

spj(sno,pno,jno,qty);

建spj表

createtablespj

(snochar(3),

pnochar(3),

jnochar(3),

qtyint);

4.針對(duì)上題中建立的四個(gè)表試用sql語(yǔ)言完成第3章習(xí)

題3中的查詢。

答:(1)求供應(yīng)工程jl零件的供應(yīng)商號(hào)碼sno;

selectsno

fromspj

wherejno=

(2)求供應(yīng)工程jl零件pl的供應(yīng)商號(hào)碼sno;

selectsno

fromspj

wherejno='jl?

andpno='pl';

(3)求供應(yīng)工程jl零件為紅色的供應(yīng)商號(hào)碼sno;

selectsno

fromspj

wherejno='jl'

andpnoin

(selectpno

fromp

wherecotor=,紅,);

selectsno

fromspj,p

wherejno='jl?

andspj.pno=p.pno

andcotor='紅';

(4)求沒有使用天津供應(yīng)商生產(chǎn)的紅色零件的工程號(hào)

jno;

解析:

用sql語(yǔ)言表示如下:

selectjno

fromj

wherenotexists

(select*

fromspj

wherespj.jno=j.jno

andsnoin

(selectsno

froms

wherecity='天津')

andpnoin

(selectpno

fromp

wherecolor=,紅,));

selectjno

fromj

wherenotexists

(select*1

fromspj,s,p

wherespj.jno=j.jno

andspj.sno=s.sno

andspj.pno=p.pno

ands.city='天津'

andp.cotor='紅');

注意:從j表入手,以包含那些尚未使用任何零件的

工程號(hào)。

(5)求至少用了供應(yīng)商si所供應(yīng)的全部零件的工程

號(hào)jnoo

解析:

用sql語(yǔ)言表不如下:

selectdistinctjno

fromspjspjz

wherenotexists

(select*

fromspjspjx

wheresno='sl'

andnotexists

(select*

fromspjspjy

wherespjy.pno=spjx.pno

andspjy.jnon=spjz.jno

andspjy.sno=,si'));

andspjy.sno=,sl'));

5.針對(duì)習(xí)題3中的四個(gè)表試用sql語(yǔ)言完成以下各項(xiàng)操

作:

(1)找出所有供應(yīng)商的姓名和所在城市。

(2)找出所有零件的名稱、顏色、重量。

(3)找出使用供應(yīng)商si所供應(yīng)零件的工程號(hào)碼。

(4)找出工程項(xiàng)目j2使用的各種零件的名稱及其數(shù)

星.O

(5)找出上海廠商供應(yīng)的所有零件號(hào)碼。

(6)找出使用上海產(chǎn)的零件的工程名稱。

(7)找出沒有使用天津產(chǎn)的零件的工程號(hào)碼。

(8)把全部紅色零件的顏色改成藍(lán)色。

(9)由s5供給j4的零件p6改為由S3供應(yīng),請(qǐng)作必

要的修改。

(10)從供應(yīng)商關(guān)系中刪除S2的記錄,并從供應(yīng)情況

關(guān)系中刪除相應(yīng)的記錄。

(11)請(qǐng)將(s2,j6,p4,200)插入供應(yīng)情況關(guān)系。

答:(1)找出所有供應(yīng)商的姓名和所在城市。

selectsname,city

froms;

(2)找出所有零件的名稱、顏色、重量。

selectpname,colonweight

fromp;

(3)找出使用供應(yīng)商si所供應(yīng)零件的工程號(hào)碼。

selectjno

fromspj

wheresno='si';

(4)找出工程項(xiàng)目)2使用的各種零件的名稱及其數(shù)

.SL

o

selectp.pname,spj.qty

fromp,spj

wherep.pno=spj.pno

andspj.jno='j2,;

(5)找出上海廠商供應(yīng)的所有零件號(hào)碼。

selectdistinctpno

fromspj

wheresnoin

(selectsno

froms

wherecity='上海');

(6)找出使用上海產(chǎn)的零件的工程名稱。

selectjname

fromspj,s

wherej.jno=spj.jno

andspj.sno=s.sno

ands.city='上海';

selectjname

fromj

wherejnoin

(selectjno

fromspj,s

wherespj.sno=s.sno

ands.city='上海');

(7)找出沒有使用天津產(chǎn)的零件的工程號(hào)碼。

selectjno

fromj

wherenotexists

(select*

fromspj

wherespj.jno=j.jnoandsnoin

(selectsno

froms

wherecity='天津'));

selectjno

fromj

wherenotexists

(select*1

fromspj,s

wherespj.jno=j.jnoandspj.sno=s.snoands.city=

‘天津');

(8)把全部紅色零件的顏色改成藍(lán)色。

updatep

setcolor:'藍(lán),

wherecok)r='紅’;

(9)由s5供給j4的零件p6改為由s3供應(yīng),請(qǐng)作必

要的修改。

updatespj

setsno='s3'

wheresno='s5'andjno='j4'andpno='p6';

(10)從供應(yīng)商關(guān)系中刪除s2的記錄,并從供應(yīng)情況

關(guān)系中刪除相應(yīng)的記錄。

delete

fromspj

wheresno='s2';

delete

froms

wheresno='s2';

解析:注意刪除順序,應(yīng)該先從spj表中刪除供應(yīng)商s2

所供應(yīng)零件的記錄,然后從從s表中刪除s2。

(11)請(qǐng)將(s2,j6,p4,200)插入供應(yīng)情況關(guān)系。

insertintospj(sno,jno,pno,qty)

values(s2,j6,p4,200);

insertintospj

values(s2,p4,j6,200);

6.什么是基本表?什么是視圖??jī)烧叩膮^(qū)別和聯(lián)

系是什么?

答:基本表是本身獨(dú)立存在的表,在sql中一個(gè)關(guān)系就

對(duì)應(yīng)一個(gè)表。

視圖是從一個(gè)或幾個(gè)基本表導(dǎo)出的表。視圖本身不獨(dú)立

存儲(chǔ)在數(shù)據(jù)庫(kù)中,是一個(gè)虛表。即數(shù)據(jù)庫(kù)中只存放視圖的定

義而不存放視圖對(duì)應(yīng)的數(shù)據(jù),這些數(shù)據(jù)仍存放在導(dǎo)出視圖的

基本表中。視圖在概念上與基本表等同,用戶可以如同基本

表那樣使用視圖,可以在視圖上再定義視圖。

7.試述視圖的優(yōu)點(diǎn)。

答:(1)視圖能夠簡(jiǎn)化用戶的操作。

(2)視圖使用戶能以多種角度看待同一數(shù)據(jù)。

(3)視圖對(duì)重構(gòu)數(shù)據(jù)庫(kù)提供了一定程度的邏輯獨(dú)立性。

(4)視圖能夠?qū)C(jī)密數(shù)據(jù)提供安全保護(hù)。

8.所有的視圖是否都可以更新?為什么?

答:不是。視圖是不實(shí)際存儲(chǔ)數(shù)據(jù)的虛表,因此對(duì)視圖

的更新,最終要轉(zhuǎn)換為對(duì)基本表的更新。因?yàn)橛行┮晥D的更

新不能唯一地有意義地轉(zhuǎn)換成對(duì)相應(yīng)基本表的更新,所以,

并不是所有的視圖都是可更新的。如《概論》3.5.1中的視

圖s_g(學(xué)生的學(xué)號(hào)及他的平均成績(jī))

creatviews_g(sno,gavg)

asselectsno,avg(grade)

fromsc

groupbysno;

要修改平均成績(jī),必須修改各科成績(jī),而我們無法知道

哪些課程成績(jī)的變化導(dǎo)致了平均成績(jī)的變化。

9.哪類視圖是可以更新的,哪類視圖是不可更新的?

各舉一例說明。

答:基本表的行列子集視圖一般是可更新的。如《概論》

3.5.3中的例lo

若視圖的屬性來自集函數(shù)、表達(dá)式,則該視圖肯定是不

可以更新的。

如《概論》353中的s_g視圖。

1

溫馨提示

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

評(píng)論

0/150

提交評(píng)論