數(shù)據(jù)庫習題集_第1頁
數(shù)據(jù)庫習題集_第2頁
數(shù)據(jù)庫習題集_第3頁
數(shù)據(jù)庫習題集_第4頁
數(shù)據(jù)庫習題集_第5頁
已閱讀5頁,還剩48頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、數(shù)據(jù)庫系統(tǒng)概論習題集第一章 緒論一、選擇題1. DBS是采用了數(shù)據(jù)庫技術的計算機系統(tǒng),DBS是一個集合體,包含數(shù)據(jù)庫、計算機硬件、軟件和(C )。A. 系統(tǒng)分析員B. 程序員 C. 數(shù)據(jù)庫管理員D. 操作員2.數(shù)據(jù)庫(DB),數(shù)據(jù)庫系統(tǒng)(DBS)和數(shù)據(jù)庫管理系統(tǒng)(DBMS)之間的關系是(A)。A. DBS包括 DB 和 DBMS B. DBMS包括 DB 和 DBSC. DB包括 DBS和 DBMS D. DBS是 DB,也就是 DBMS3. 下面列出的數(shù)據(jù)庫管理技術發(fā)展的三個階段中,沒有專門的軟件對數(shù)據(jù)進行管理的 是( D) 。I .人工管理階段II .文件系統(tǒng)階段III .數(shù)據(jù)庫階段A.

2、I 和 II B. 只有 IIC. II 和 III D. 只有 I4. 下列四項中,不屬于數(shù)據(jù)庫系統(tǒng)特點的是(C)。A. 數(shù)據(jù)共享B. 數(shù)據(jù)完整性C. 數(shù)據(jù)冗余度高D. 數(shù)據(jù)獨立性高5. 數(shù)據(jù)庫系統(tǒng)的數(shù)據(jù)獨立性體現(xiàn)在(B)。A.不會因為數(shù)據(jù)的變化而影響到應用程序B.不會因為系統(tǒng)數(shù)據(jù)存儲結(jié)構(gòu)與數(shù)據(jù)邏輯結(jié)構(gòu)的變化而影響應用程序C不會因為存儲策略的變化而影響存儲結(jié)構(gòu)D.不會因為某些存儲結(jié)構(gòu)的變化而影響其他的存儲結(jié)構(gòu)A)6. 描述數(shù)據(jù)庫全體數(shù)據(jù)的全局邏輯結(jié)構(gòu)和特性的是(A. 模式 B. 內(nèi)模式 C. 外模式 D. 用戶模式7. 要保證數(shù)據(jù)庫的數(shù)據(jù)獨立性,需要修改的是(C )。A. 模式與外模式B.

3、模式與內(nèi)模式C. 三層之間的兩種映射D. 三層模式8. 要保證數(shù)據(jù)庫的邏輯數(shù)據(jù)獨立性,需要修改的是(A )。A. 模式與外模式的映射B. 模式與內(nèi)模式之間的映射C. 模式 D. 三層模式9. 用戶或應用程序看到的那部分局部邏輯結(jié)構(gòu)和特征的描述是( C ) , 它是模式的邏輯子集。A.模式B.物理模式C.子模式D.內(nèi)模式10. 下述(D)不是DBA數(shù)據(jù)庫管理員的職責 。A.完整性約束說明 B.定義數(shù)據(jù)庫模式C數(shù)據(jù)庫安全D.數(shù)據(jù)庫管理系統(tǒng)設計選擇題答案:(1) C (2) A (3) D (4) C (5) B(6) A (7) C (8) A (9) C (10) D二、簡答題1 .試述數(shù)據(jù)、數(shù)

4、據(jù)庫、數(shù)據(jù)庫系統(tǒng)、數(shù)據(jù)庫管理系統(tǒng)的概念 。數(shù)據(jù) :描述事物的符號記錄稱為數(shù)據(jù)。數(shù)據(jù)的種類有文字、圖形、圖象、音頻、視頻等等。數(shù) 據(jù)與其語義是不可分的。數(shù)據(jù)庫 :數(shù)據(jù)庫是長期儲存在計算機內(nèi)、有組織的、可共享的數(shù)據(jù)集合。數(shù)據(jù)庫中的數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和儲存,具有較小的冗余度、較高的數(shù)據(jù)獨立性和易擴展性,并可為各種用戶共享。數(shù)據(jù)庫系統(tǒng):數(shù)據(jù)庫系統(tǒng)(DBS)是指在計算機系統(tǒng)中引入數(shù)據(jù)庫后的系統(tǒng)構(gòu)成。數(shù)據(jù)庫系統(tǒng)由數(shù)據(jù) 庫、數(shù)據(jù)庫管理系統(tǒng)(及其開發(fā)工具)、應用系統(tǒng)、數(shù)據(jù)庫管理員構(gòu)成。數(shù)據(jù)庫管理系統(tǒng):數(shù)據(jù)庫管理系統(tǒng)(DBMS)是位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件。用于科學地 組織和存儲數(shù)據(jù)、

5、高效地獲取和維護數(shù)據(jù)。DBMS主要功能包括數(shù)據(jù)定義功能、數(shù)據(jù)操縱功能、數(shù)據(jù)庫的運行管理功能、數(shù)據(jù)庫的建立和維護功能。2.使用數(shù)據(jù)庫系統(tǒng)有什么好處?使用數(shù)據(jù)庫系統(tǒng)的好處是由數(shù)據(jù)庫管理系統(tǒng)的特點或優(yōu)點決定的。使用數(shù)據(jù)庫系統(tǒng)的好處很多,例如可以大大提高應用開發(fā)的效率,方便用戶的使用,減輕數(shù)據(jù)庫系統(tǒng)管理人員維護的負擔等。為什么有這些好處,可以結(jié)合第5 題來回答。使用數(shù)據(jù)庫系統(tǒng)可以大大提高應用開發(fā)的效率。因為在數(shù)據(jù)庫系統(tǒng)中應用程序不必考慮數(shù)據(jù)的定義、存儲和數(shù)據(jù)存取的具體路徑,這些工作都由DBMS來完成。用一個通俗的比喻, 使用了 DBMS就如有了一個好參謀好助手,許多具體的技術工作都由這個助手來完成。開

6、發(fā)人員就可以專注于應用邏輯的設計而不必為管理數(shù)據(jù)的許許多多復雜的細節(jié)操心。還有, 當應用邏輯改變,數(shù)據(jù)的邏輯結(jié)構(gòu)需要改變時,由于數(shù)據(jù)庫系統(tǒng)提供了數(shù)據(jù)與程序之間的獨立性。數(shù)據(jù)邏輯結(jié)構(gòu)的改變是DBA 的責任,開發(fā)人員不必修改應用程序,或者只需要修改很少的應用程序。從而既簡化了應用程序的編制,又大大減少了應用程序的維護和修改。使用數(shù)據(jù)庫系統(tǒng)可以減輕數(shù)據(jù)庫系統(tǒng)管理人員維護系統(tǒng)的負擔。因為 DBMS 在數(shù)據(jù)庫建立、 運用和維護時對數(shù)據(jù)庫進行統(tǒng)一的管理和控制,包括數(shù)據(jù)的完整性、安全性,多用戶并發(fā)控制,故障恢復等等都由DBMS執(zhí)行。總之,使用數(shù)據(jù)庫系統(tǒng)的優(yōu)點是很多的,既便于數(shù)據(jù)的集中管理,控制數(shù)據(jù)冗余,可以

7、提高數(shù)據(jù)的利用率和一致性,又有利于應用程序的開發(fā)和維護。讀者可以在自己今后的工作中結(jié)合具體應用,認真加以體會和總結(jié)。試述文件系統(tǒng)與數(shù)據(jù)庫系統(tǒng)的區(qū)別和聯(lián)系。文件系統(tǒng)與數(shù)據(jù)庫系統(tǒng)的區(qū)別文件系統(tǒng)面向某一應用程序,共享性差、冗余度大,獨立性差,紀錄內(nèi)有結(jié)構(gòu)、整體無結(jié)構(gòu),應用程序自己控制。數(shù)據(jù)庫系統(tǒng)面向現(xiàn)實世界,共享性高、冗余度小,具有高度的物理獨立性和一定的邏輯獨立性,整體結(jié)構(gòu)化,用數(shù)據(jù)模型描述,由數(shù)據(jù)庫管理系統(tǒng)提供數(shù)據(jù)安全性、完整性、并發(fā)控制和恢復能力。讀者可以參考概論書中表1.1 中的有關內(nèi)容。文件系統(tǒng)與數(shù)據(jù)庫系統(tǒng)的聯(lián)系是:文件系統(tǒng)與數(shù)據(jù)庫系統(tǒng)都是計算機系統(tǒng)中管理數(shù)據(jù)的軟件。4 .舉出適合用文件系

8、統(tǒng)而不是數(shù)據(jù)庫系統(tǒng)的例子;再舉出適合用數(shù)據(jù)庫系統(tǒng)的應用例子。適用于文件系統(tǒng)而不是數(shù)據(jù)庫系統(tǒng)的應用例子數(shù)據(jù)的備份,軟件或應用程序使用過程中的臨時數(shù)據(jù)存儲一般使用文件比較合適。早期功能比較簡單、比較固定的應用系統(tǒng)也適合用文件系統(tǒng)。適用于數(shù)據(jù)庫系統(tǒng)而非文件系統(tǒng)的應用例子目前, 幾乎所有企業(yè)或部門的信息系統(tǒng)都以數(shù)據(jù)庫系統(tǒng)為基礎,都使用數(shù)據(jù)庫。如一個工廠的管理信息系統(tǒng)(其中會包括許多子系統(tǒng),如庫存管理系統(tǒng)、物資采購系統(tǒng)、作業(yè)調(diào)度系統(tǒng)、設備管理系統(tǒng)、人事管理系統(tǒng)等等),還比如學校的學生管理系統(tǒng),人事管理系統(tǒng),圖書館的圖書管理系統(tǒng)等等都適合用數(shù)據(jù)庫系統(tǒng)。5 .試述數(shù)據(jù)庫系統(tǒng)的特點。數(shù)據(jù)庫系統(tǒng)的主要特點有:一

9、、數(shù)據(jù)結(jié)構(gòu)化數(shù)據(jù)庫系統(tǒng)實現(xiàn)整體數(shù)據(jù)的結(jié)構(gòu)化,這是數(shù)據(jù)庫的主要特征之一,也是數(shù)據(jù)庫系統(tǒng)與文件系統(tǒng)的本質(zhì)區(qū)別。二、數(shù)據(jù)的共享性高,冗余度低,易擴充數(shù)據(jù)庫的數(shù)據(jù)不再面向某個應用而是面向整個系統(tǒng),因此可以被多個用戶、多個應用、用多種不同的語言共享使用。由于數(shù)據(jù)面向整個系統(tǒng),是有結(jié)構(gòu)的數(shù)據(jù),不僅可以被多個應用共享使用,而且容易增加新的應用,這就使得數(shù)據(jù)庫系統(tǒng)彈性大,易于擴充。三、數(shù)據(jù)獨立性高數(shù)據(jù)獨立性包括數(shù)據(jù)的物理獨立性和數(shù)據(jù)的邏輯獨立性。數(shù)據(jù)庫管理系統(tǒng)的模式結(jié)構(gòu)和二級映象功能保證了數(shù)據(jù)庫中的數(shù)據(jù)具有很高的物理獨 立性和邏輯獨立性。四、數(shù)據(jù)由DBMS統(tǒng)一管理和控制數(shù)據(jù)庫的共享是并發(fā)的共享, 即多個用戶可

10、以同時存取數(shù)據(jù)庫中的數(shù)據(jù)甚至可以同時存 取數(shù)據(jù)庫中同一個數(shù)據(jù)。為此, DBMS必須提供統(tǒng)一的數(shù)據(jù)控制功能,包括數(shù)據(jù)的安全性保 護,數(shù)據(jù)的完整性檢查,并發(fā)控制和數(shù)據(jù)庫恢復。*解析:DBMS數(shù)據(jù)控制功能包括四個方面 :數(shù)據(jù)的安全性保護:保護數(shù)據(jù)以防止不合法的使用造成的數(shù)據(jù)的泄密和破壞;數(shù)據(jù)的完整性檢查:將數(shù)據(jù)控制在有效的范圍內(nèi)或保證數(shù)據(jù)之間滿足一定的關系;并發(fā)控制:對多用戶的并發(fā)操作加以控制和協(xié)調(diào),保證并發(fā)操作的正確性;數(shù)據(jù)庫恢復:當計算機系統(tǒng)發(fā)生硬件故障、軟件故障,或者由于操作員的失誤以及故意的破壞影響數(shù)據(jù)庫中數(shù)據(jù)的正確性,甚至造成數(shù)據(jù)庫部分或全部數(shù)據(jù)的丟失時,能將數(shù)據(jù)庫從錯誤狀態(tài)恢復到某一已知

11、的正確狀態(tài)(亦稱為完整狀態(tài)或一致狀態(tài))。下面我們可以得到“什么是數(shù)據(jù)庫”的一個定義:數(shù)據(jù)庫是長期存儲在計算機內(nèi)有組織的大量的共享的數(shù)據(jù)集合。它可以供各種用戶共 享,具有最小冗余度和較高的數(shù)據(jù)獨立性。DBMS在數(shù)據(jù)庫建立、運用和維護時對數(shù)據(jù)庫進行統(tǒng)一控制,以保證數(shù)據(jù)的完整性、安全性,并在多用戶同時使用數(shù)據(jù)庫時進行并發(fā)控制, 在發(fā)生故障后對系統(tǒng)進行恢復。數(shù)據(jù)庫系統(tǒng)的出現(xiàn)使信息系統(tǒng)從以加工數(shù)據(jù)的程序為中心轉(zhuǎn)向圍繞共享的數(shù)據(jù)庫為中 心的新階段。6 .數(shù)據(jù)庫管理系統(tǒng)的主要功能有哪些?數(shù)據(jù)庫定義功能;數(shù)據(jù)存取功能;數(shù)據(jù)庫運行管理;數(shù)據(jù)庫的建立和維護功能。7 .試述數(shù)據(jù)模型的概念、數(shù)據(jù)模型的作用和數(shù)據(jù)模型的

12、三個要素。數(shù)據(jù)模型是數(shù)據(jù)庫中用來對現(xiàn)實世界進行抽象的工具,是數(shù)據(jù)庫中用于提供信息表示 和操作手段的形式構(gòu)架 。一般地講,數(shù)據(jù)模型是嚴格定義的概念的集合。這些概念精確地描述系統(tǒng)的靜態(tài)特性、動態(tài)特性和完整性約束條件。因此數(shù)據(jù)模型通常由數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作和完整性約束 三部 分組成。數(shù)據(jù)結(jié)構(gòu):是所研究的對象類型的集合,是對系統(tǒng)的靜態(tài)特性的描述。數(shù)據(jù)操作:是指對數(shù)據(jù)庫中各種對象(型)的實例(值)允許進行的操作的集合,包 括操作及有關的操作規(guī)則,是對系統(tǒng)動態(tài)特性的描述。數(shù)據(jù)的約束條件:是完整性規(guī)則的集合,完整性規(guī)則是給定的數(shù)據(jù)模型中數(shù)據(jù)及其聯(lián)系所具有的制約和依存規(guī)則,用以限定符合數(shù)據(jù)模型的數(shù)據(jù)庫狀態(tài)以及狀

13、態(tài)的變化,以保證數(shù)據(jù)的正確、有效、相容。8 .試述概念模型的作用。概念模型實際上是現(xiàn)實世界到機器世界的一個中間層次。概念模型用于信息世界的建 模,是現(xiàn)實世界到信息世界的第一層抽象,是數(shù)據(jù)庫設計人員進行數(shù)據(jù)庫設計的有力工具, 也是數(shù)據(jù)庫設計人員和用戶之間進行交流的語言。9 .定義并解釋概念模型中以下術語:實體,實體型,實體集,屬性,碼,實體聯(lián)系圖(E-R圖)實體:客觀存在并可以相互區(qū)分的事物叫實體。實體型:具有相同屬性的實體具有相同的特征和性質(zhì),用實體名及其屬性名集合來抽象和刻畫同類實體稱為實體型。實體集:同型實體的集合稱為實體集。屬性:實體所具有的某一特性,一個實體可由若干個屬性來刻畫。碼:唯

14、一標識實體的屬性集稱為碼。實體聯(lián)系圖:E-R圖提供了表示實體型、屬性和聯(lián)系的方法: 實體型:用矩形表示,矩形框內(nèi)寫明實體名。 屬性:用橢圓形表示,并用無向邊將其與相應的實體連接起來。 聯(lián)系:用菱形表示,菱形框內(nèi)寫明聯(lián)系名,并用無向邊分別與有關實體連接起來,同 時在無向邊旁標上聯(lián)系的類型(1 : 1 , 1 : n 或 m : n) 。10.試給出三個實際部門的E-R圖,要求實體型之間具有一對一,一對多,多對多各種不同的聯(lián)系。第二章 關系數(shù)據(jù)庫一、選擇題1. 下面的選項不是關系數(shù)據(jù)庫基本特征的是() 。A.不同的列應有不同的數(shù)據(jù)類型B.不同的列應有不同的列名C與行的次序無關D.與列的次序無關2.

15、 一個關系只有一個()。A.候選碼 B.外碼 C.超碼 D.主碼3. 關系模型中,一個碼是() 。A.可以由多個任意屬性組成B.至多由一個屬性組成C可有多個或者一個其值能夠唯一表示該關系模式中任何元組的屬性組成D.以上都不是4. 現(xiàn)有如下關系:患者(患者編號,患者姓名,性別,出生日起,所在單位)醫(yī)療(患者編號,患者姓名,醫(yī)生編號,醫(yī)生姓名,診斷日期,診斷結(jié)果)其中,醫(yī)療關系中的外碼是() 。A. 患者編號B. 患者姓名C. 患者編號和患者姓名D. 醫(yī)生編號和患者編號5. 現(xiàn)有一個關系:借閱(書號,書名,庫存數(shù),讀者號,借期,還期),假如同一本書允許一個讀者多次借閱,但不能同時對一種書借多本,則

16、該關系模式的外碼是() 。A. 書號 B. 讀者號C. 書號+讀者號D. 書號+讀者號+借期6. 關系模型中實現(xiàn)實體間N: M 聯(lián)系是通過增加一個()。A.關系實現(xiàn)B.屬性實現(xiàn) C.關系或一個屬性實現(xiàn)D.關系和一個屬性實現(xiàn)7. 關系代數(shù)運算是以()為基礎的運算。A. 關系運算B. 謂詞演算C. 集合運算D. 代數(shù)運算8. 關系數(shù)據(jù)庫管理系統(tǒng)應能實現(xiàn)的專門關系運算包括() 。A. 排序、索引、統(tǒng)計B. 選擇、投影、連接C. 關聯(lián)、更新、排序D. 顯示、打印、制表9. 五種基本關系代數(shù)運算是() 。A. U X (T 兀B. U (T 兀c.u n x o兀C. u no兀10. 關系代數(shù)表達式的

17、優(yōu)化策略中,首先要做的是()。A.對文件進行預處理B.盡早執(zhí)行選擇運算C執(zhí)行笛卡爾積運算D.投影運算11. 關系數(shù)據(jù)庫中的投影操作是指從關系中()。A.抽出特定記錄B.抽出特定字段C建立相應白影像D.建立相應的圖形12. 從一個數(shù)據(jù)庫文件中取出滿足某個條件的所有記錄形成一個新的數(shù)據(jù)庫文件的操作是( )操作 。A.投影B.聯(lián)接C.選才i D.復制13. 關系代數(shù)中的聯(lián)接操作是由()操作組合而成。A.選擇和投影 B.選擇和笛卡爾積C投影、選擇、笛卡爾積D.投影和笛卡爾積14. 自然聯(lián)接是構(gòu)成新關系的有效方法。一般情況下,當對關系R 和 S 是用自然聯(lián)接時,要求R和S含有一個或者多個共有的()。A.

18、記錄B.行C.屬性 D.元組15. 假設有關系R和S,在下列的關系運算中,()運算不要求:“R和S具有相同的元 數(shù),且它們的對應屬性的數(shù)據(jù)類型也相同”。A.Rn S B. RJ S C. R- S D. FR< S16. 假設有關系R和S,關系代數(shù)表達式 R ( R S)表示的是()。A.Rn S B. RJ S C. R- S D. FR< S17. 下面列出的關系代數(shù)表達是中,那些式子能夠成立()。i . b fl ( b f2 (E) = b fl A f2 (E)ii . E1oo E2 = E2o E1iii . (E1ooE2)oo E3 = E(E2oo E3)iv

19、. (rf1 (rf2 (E) =(rf2 (rf1(E)A.全部 B. ii和iii C.沒有 D. i和iv18. 下面四個關系表達式是等價的,是判別它們的執(zhí)行效率()。E1 =Tt A (b B=C A D=E'(RX S)E2 =Tt A (b B=C (RX (tD=E'(S)E3 =Tt A (Roo B=Cb D=E' (S)E3 =Tt A ( b D=E' (Roo B=C S)A. E3最快 B. E2最快 C. E4最快D. E1最快19. 有關系SC( S_ID, C_ID, AGE, SCORE) ,查找年齡大于22 歲的學生的學號和分

20、數(shù),正確的關系代數(shù)表達式是()。i .兀 S_ID, SCORE & age>22 (SC)ii . b age>22 (兀 S_ID, SCORE (SC)iii .兀 S_ID, SCORE & age>22 (兀 S_ID, SCORE AGE (SC)A. i和ii B.只有ii正確 C.只有 i正確 D. i和iii正確選擇題答案:(1) A (2) D (3) C (4) A (5) 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)

21、 A (19) D二、簡答題1. 試述關系模型的三個組成部分。2. 試述關系數(shù)據(jù)語言的特點和分類。3. 設有一個SP以據(jù)庫,包括S, P, J, SPJ四個關系模式:S( SNO, SNAME, STATU,S CITY);P(PNO, PNAME, COLOR, WEIGHT);J(JNO, JNAME, CITY);SPJ(SNO, PNO, JNO, QTY);供應商表S 由供應商代碼(SNO) 、供應商姓名(SNAME) 、供應商狀態(tài)(STATUS) 、供應商所在城市(CITY)組成;零件表P由零件代碼(PNO)、零件名(PNAME)、顏色(COLOR、 重量(WEIGHT)組成;工程

22、項目表 J由工程項目代碼(JNO)、工程項目名(JNAME)、工程 項目所在城市(CITY)組成;供應情況表SPJ由供應商代碼(SNQ、零件代碼(PNO)、工程項目代碼(JNO)、供應數(shù)量(QTY)組成,表示某供應商供應某種零件給某工程項目的數(shù) 量為QTY。試用關系代數(shù)完成如下查詢:( 1) 求供應工程J1 零件的供應商號碼SNO;( 2) 求供應工程J1 零件 P1 的供應商號碼SNO;( 3) 求供應工程J1 零件為紅色的供應商號碼SNO;( 4) 求沒有使用天津供應商生產(chǎn)的紅色零件的工程號JNO;( 5) 求至少用了供應商S1 所供應的全部零件的工程號JNO。4. 定義并理解下列術語,說

23、明它們之間的聯(lián)系與區(qū)別:( 1 )域,笛卡爾積,關系,元組,屬性( 2)主碼,候選碼,外碼( 3)關系模式,關系,關系數(shù)據(jù)庫5. 試述關系模型的完整性規(guī)則。在參照完整性中,為什么外碼屬性的值有時也可以為 空?什么情況下才可以為空?6. 試述等值連接與自然連接的區(qū)別和聯(lián)系。7. 關系代數(shù)的基本運算有哪些?8. 試用關系代數(shù)的基本運算來表示其他運算。第三章SQL語言一、選擇題1. SQL語言是()的語言,容易學習。A.過程化B.非過程化C格式化D.導航式2. SQL語言的數(shù)據(jù)操縱語句包括 SELECT INSERT UPDATE DELETE。其中最重要的, 也是使用最頻繁的語句是()。A. SE

24、LECT B. INSERTC. UPDATE D. DELETE3. 在視圖上不能完成的操作是()。A. 更新視圖B. 查詢C. 在視圖上定義新的表D. 在視圖上定義新的視圖CREAT、E4. SQL語言集數(shù)據(jù)查詢、數(shù)據(jù)操縱、數(shù)據(jù)定義和數(shù)據(jù)控制功能于一體,其中,DROP ALTERS句是實現(xiàn)哪種功能()。A. 數(shù)據(jù)查詢B. 數(shù)據(jù)操縱C. 數(shù)據(jù)定義D. 數(shù)據(jù)控制5. SQL語言中,刪除一個視圖的命令是()。A.DELETEB.DROPC.CLEARD.REMOVE6. 在SQL語言中的視圖 VIEW是數(shù)據(jù)庫的()。A. 外模式 B. 模式 C. 內(nèi)模式 D. 存儲模式7. 下列的SQL語句中,

25、()不是數(shù)據(jù)定義語句。A. CREATE TABLE B. DROP VIEWC. CREATE VIEW D. GRANT8.若要撤銷數(shù)據(jù)庫中已經(jīng)存在的表S,可用()。A. DELETE TABLE S B. DELETE SC. DROP TABLE S D. DROP S9.若要在基本表 S中增加一列CN (課程名),可用()。A.ADD TABLE S(CN CHAR ( 8 )B.ADD TABLE S ALTERCN CHAR( 8 )C.ALTER TABLE S ADDCN CHAR( 8 )D.ALTER TABLE S(ADD CN CHAR( 8 )10.學生關系模式 S

26、( S# , Sname, Sex, Age), S的屬性分別表示學生的學號、姓名、 性別、年齡。要在表 S中刪除一個屬性“年齡”,可選用的SQL語句是()。A. DELETE Age from SB. ALTER TABLE S DROP AgeC. UPDATE S AgeD. ALTER TABLE S Age11. 有關系S(S,SNAME,SAGE) ,C(C,CNAME),SC(S,C,GRADE) 。其中S#是學生號,SNAME是學生姓名,SAG弱學生年齡,C#是課程號,CNAME是課程名稱。要查詢選修“ACCESS課的年齡不小于 20的全體學生姓名的 SQL語句是SELECT

27、SNAME FROM S C, SC WHERE?句。這里的 WHERE子句的內(nèi)容是()。A. S.S# = SC.S# and C.C# = SC.C# and SAGE>=20 and CNAM EA=CCESSB. S.S# = SC.S# and C.C# = SC.C# and SAGE in>=20 and CNAME inACCESSC. SAGE in>=20 and CNAME in ACCESSD. SAGE>=20 and CNAME= ACCESS12. 設關系數(shù)據(jù)庫中一個表S 的結(jié)構(gòu)為S( SN, CN, grade) ,其中 SN 為學生名,

28、CN 為課程名,二者均為字符型;grade 為成績,數(shù)值型,取值范圍0 100。若要把“張二的化學成績80分”插入S中,則可用()。A. ADDINTO SVALUES(張二化學,80')B. INSERTINTO SVALUES(張二化學,80')C. ADDINTO SVALUES (張二,化學,80)D. INSERTINTO S13. 設關系數(shù)據(jù)庫中一個表 為課程名,二者均為字符型;VALUES (張二,化學,80)S 的結(jié)構(gòu)為:S( SN, CN, grade) ,其中 SN 為學生名,CNgrade 為成績,數(shù)值型,取值范圍0 100。若要更正王二的化學成績?yōu)?5

29、分,則可用()A. UPDATE SSET grade= 85WHERE SNk'王二'AND C4 '化學'B. UPDATE SSET grade=' 85'WHERE SN='王二'AND CN='化學'C. UPDATE grade 85WHERE SN='王二'AND CN='化學'D. UPDATE grade' 85'WHERE SN='王二'AND CN='化學'14 .在SQL語言中,子查詢是()。A. 返回單表中數(shù)據(jù)

30、子集的查詢語言B. 選取多表中字段子集的查詢語句C. 選取單表中字段子集的查詢語句D. 嵌入到另一個查詢語句之中的查詢語句15 . SQL是一種()語言。A. 高級算法B. 人工智能C. 關系數(shù)據(jù)庫D. 函數(shù)型16 . 有關系S(S,SNAME,SEX) ,C(C,CNAME),SC(S,C,GRADE) 。其中S#是學生號,SNAME是學生姓名,SEX是性另ij, C#是課程號,CNAME是課程名稱。要查 詢選修“數(shù)據(jù)庫”課的全體男生姓名的SQL語句是SELECT SNAME FROM,SC, SC WHERE?句。這里的WHERE子句的內(nèi)容是()。A.S.S# = SC.S# and C.

31、C# = SC.C# and SE X=' and CNAME= 數(shù)據(jù)庫17 S.S# = SC.S# and C.C# = SC.C# and SEX m'and CNAME in'數(shù)據(jù)庫C.SEX 男and CNAME 數(shù)據(jù)庫D.S.SEX=男'and CNAME='數(shù)據(jù)庫'17 .若用如下的SQL語句創(chuàng)建了一個表 SCCREATE TABLE SC S# CHAR(6) NOT NULL C# CHAR( 3) NOT NULL SCORE INTEGER NOTE CHAR(20);向SC表插入如下行時,()行可以被插入 。A. (

32、9; 201009',' 111' , 60,必修)B. (' 200823',' 101', NULL, NULL)C. (NULL, ' 103', 80,'選修')D. (' 201132' , NULL, 86,'')18 .假設學生關系 S (S# , SNAME, SEX,課程關系C ( C# , CNAME),學生選課關系 SC(S# , C# , GRADE)。要查詢選修“ Computer”課的男生姓名,將涉及到關系()。A. S B. S SC C. C

33、SC D. 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二、簡答題1 .試述SQL語言的特點。答:(1)綜合統(tǒng)一。SQL語言集數(shù)據(jù)定義語言DDL、數(shù)據(jù)操縱語言 DML、數(shù)據(jù)控制語言DCL的功能于一體。(2)高度非過程化。用 SQL語言進行數(shù)據(jù)操作,只要提出“做什么” ,而無須指明“怎 么做”,因此無需了解存取路徑,存取路徑的選擇以及 SQL語句的操作過程由系統(tǒng)自動完成。(3)面向集合的操作

34、方式。SQL語言采用集合操作方式,不僅操作對象、查找結(jié)果可以是元組的集合,而且一次插入、刪除、更新操作的對象也可以是元組的集合。(4)以同一種語法結(jié)構(gòu)提供兩種使用方式。SQL語言既是自含式語言,又是嵌入式語言。作為自含式語言,它能夠獨立地用于聯(lián)機交互的使用方式,也能夠嵌入到高級語言程序中,供程序員設計程序時使用。(5)語言簡捷,易學易用。2 .試述SQL的定義功能。答:SQL的數(shù)據(jù)定義功能包括定義表、定義視圖和定義索引。SQL語言使用 CREATE TABLE句定義建立基本表,;ALTER TABL踣句修改基本表定義, DROP TABL的句刪除基本表;建立索引使用CREATE INDE席句建

35、立索弓I,DROP INDEX語句刪除索引表;SQL語言使用CREATE VIEW命令建立視圖,DROP VIEW語句刪除視圖。3 .用SQL語句建立第3章習題3中的四個表。答: 對于 S表:S( SNO SNAME, STATUS CITY建S表CREATE TABLE S(SNO CHAR(3)SNAME CHAR(10)STATUS CHAR(2)CITY CHAR(10)P(PNO, PNAME, COLOR WEIGHT);建P表CREATE TABLE P(PNO CHAR(3)PNAME CHAR(10)COLOR CHAR(4)WEIGHT INT);J(JNO, JNAME,

36、 CITY);建J表CREATE TABLE J(JNO CHAR(3)JNAME CHAR(10)CITY CHAR(10)SPJ(SNQ PNO, JNO, QTY);建SP欣CREATE TABLE SPJ(SNO CHAR(3)PNO CHAR(3)JNO CHAR(3)QTY INT)4 .針對上題中建立的四個表試用SQL語言完成第3章習題3中的查詢。5 :(1) 求供應工程J1零件的供應商號碼 SNO;SELECT SNOFROM SPJWHERE JNO=' JT ; 2) 求供應工程J1零件P1的供應商號碼 SNO;SELECT SNOFROM SPJWHEREJNO=

37、' JTAND PNO= 'P1' 3) 求供應工程J1零件為紅色的供應商號碼SNO;SELECT SNOFROM SPJWHEREJNO=' JT(SELECT PNOFROM PWHERE COLOR='紅');或SELECT SNOFROM SP,J PWHERE JNO= J1AND SPJ.PNO=.PNOAND COLOR='紅'; 4) 4) 求沒有使用天津供應商生產(chǎn)的紅色零件的工程號JNO;解析:用SQL語言表不如下:SELECT JNOFROM JWHERE NOT EXISTS(SELECT *FROM SPJ

38、WHERE SPJ.JNO=J.JNOAND SNO IN(SELECT SNOFROM SWHERE CITY='天津)AND PNO IN(SELECT PNOFROM PWHERE COLOR='紅');或SELECT JNOFROM JWHERE NOT EXISTS(SELECT *1FROM SPJ, S, PWHERE SPJ.JNO=J.JNOAND SPJ.SNO=S.SNOAND SPJ.PNO=.PNOAND S.CITY='天津'AND P COLOR='紅');注意:從J 表入手,以包含那些尚未使用任何零件的工程

39、號。 5) 5) 求至少用了供應商S1 所供應的全部零件的工程號JNO 。解析:用SQL語言表示如下:SELECT DISTINCT JNOFROM SPJ SPJZWHERE NOT EXISTS(SELECT *FROM SPJ SPJXWHERE SNO='S1'AND NOT EXISTS(SELECT *WHERE SPJY.PNO=SPJX.PNOAND SPJY.JNON=SPJZ.JNOAND SPJY.SNO =S1 ) ) ;AND SPJY.SNO='S1' ;)5.針對習題3中的四個表試用 SQL語言完成以下各項操作:( 1 )找出所有供

40、應商的姓名和所在城市。( 2)找出所有零件的名稱、顏色、重量。( 3)找出使用供應商S1 所供應零件的工程號碼。( 4)找出工程項目J2 使用的各種零件的名稱及其數(shù)量。( 5)找出上海廠商供應的所有零件號碼。( 6)找出使用上海產(chǎn)的零件的工程名稱。( 7)找出沒有使用天津產(chǎn)的零件的工程號碼。( 8)把全部紅色零件的顏色改成藍色。(9)由S5供給J4的零件P6改為由S3供應,請作必要的修改。( 10)從供應商關系中刪除S2 的記錄,并從供應情況關系中刪除相應的記錄。( 11 )請將(S2, J6, P4, 200) 插入供應情況關系。答: (1) 找出所有供應商的姓名和所在城市。SELECT S

41、NAME, CITYFROM S;(2) 找出所有零件的名稱、顏色、重量。SELECT PNAME, COLOR, WEIGHTFROM P;(3) 找出使用供應商S1 所供應零件的工程號碼。FROM SPJWHERE SNO= S1 ;(4) 找出工程項目J2 使用的各種零件的名稱及其數(shù)量。SELECT.PNAME, SPJ.QTYFROM P, SPJWHERE P.PNO=SPJ.PNOAND SPJ.JNO='J2'(5) 找出上海廠商供應的所有零件號碼。SELECT DISTINCT PNOFROM SPJWHERE SNO IN( SELECT SNOFROM SW

42、HERE CITY止海');(6) 找出使用上海產(chǎn)的零件的工程名稱。SELECT JNAMEFROM J, SPJ, SWHERE J. JNO=SPJ. JNOAND SPJ. SNO=S.SNOAND S.CITY=t 海';或SELECT JNAMEFROM JWHERE JNO IN(SELECT JNOFROM SPJ, SWHERE SPJ. SNO=S.SNOAND S.CITYHt 海');(7) 找出沒有使用天津產(chǎn)的零件的工程號碼。SELECT JNOFROM JWHERE NOT EXISTS(SELECT *FROM SPJWHERE SPJ.JN

43、O=J.JNO AND SNO IN(SELECT SNOFROM SWHERE CITY='天津);或SELECT JNOFROM JWHERE NOT EXISTS(SELECT *1FROM SPJ, SWHERE SPJ.JNO=J.JNO AND SPJ.SNO=S.SNO AND S.CITY=');(8) 把全部紅色零件的顏色改成藍色。UPDATE PSET COLOR塞WHERE COLOR紅;(9)由S5供給J4的零件P6改為由S3供應,請作必要的修改。UPDATE SPJSET SNO='S3'WHERE SNO='S5' A

44、ND JNO='J4' AND PNO='P6'(10)從供應商關系中刪除 S2的記錄,并從供應情況關系中刪除相應的記錄。DELETEFROM SPJWHERE SNO='S2'或DELETEFROM SWHERE SNO='S2'解析:注意刪除順序,應該先從SPJI中刪除供應商 S2所供應零件的記錄, 然后從從S 表中刪除S2。(11)請將(S2, J6, P4, 200)插入供應情況關系。INSERT INTO SPJ(SNO, JNO, PNO, QTY)VALUES (S2 J6, P4, 200);或INSERT INT

45、O SPJVALUES (S2 P4, J6, 200);6 .什么是基本表?什么是視圖?兩者的區(qū)別和聯(lián)系是什么?答:基本表是本身獨立存在的表,在SQL中一個關系就對應一個表。視圖是從一個或幾個基本表導出的表。視圖本身不獨立存儲在數(shù)據(jù)庫中,是一個虛表。即數(shù)據(jù)庫中只存放視圖的定義而不存放視圖對應的數(shù)據(jù),這些數(shù)據(jù)仍存放在導出視圖的基本表中。視圖在概念上與基本表等同,用戶可以如同基本表那樣使用視圖,可以在視圖上再定義視圖。7 .試述視圖的優(yōu)點。答:(1)視圖能夠簡化用戶的操作。(2)視圖使用戶能以多種角度看待同一數(shù)據(jù)。(3)視圖對重構(gòu)數(shù)據(jù)庫提供了一定程度的邏輯獨立性。(4)視圖能夠?qū)C密數(shù)據(jù)提供安全

46、保護。8 .所有的視圖是否都可以更新?為什么?答:不是。視圖是不實際存儲數(shù)據(jù)的虛表,因此對視圖的更新,最終要轉(zhuǎn)換為對基本表 的更新。因為有些視圖的更新不能唯一地有意義地轉(zhuǎn)換成對相應基本表的更新,所以,并不是所有的視圖都是可更新的。如概論3.5.1中的視圖S_G (學生的學號及他的平均成績)CREAT VIEW S_G(Sno Gavg)AS SELECT Sn oAVG(Grade)FROM SCGROUP BY Sno要修改平均成績,必須修改各科成績,而我們無法知道哪些課程成績的變化導致了平均 成績的變化。9 .哪類視圖是可以更新的,哪類視圖是不可更新的?各舉一例說明。答:基本表的行列子集視

47、圖一般是可更新的。如概論3.5.3中的例1。若視圖的屬性來自集函數(shù)、表達式,則該視圖肯定是不可以更新的。如概論3.5.3中的S_G視圖。10 .試述某個你熟悉的實際系統(tǒng)中對視圖更新的規(guī)定。答:(略)解析:不同的系統(tǒng)對視圖更新的規(guī)定是不同的,讀者必須了解你所用系統(tǒng)對視圖更新的規(guī)定。11 .請為三建工程項目建立一個供應情況的視圖,包括供應商代碼(SNQ、零件代碼(PNO)、供應數(shù)量(QTY)。針對該視圖完成下列查詢:(1)找出三建工程項目使用的各種零件代碼及其數(shù)量。(2)找出供應商S1的供應情況。答:建視圖:CREATE VIEW V_SPJ ASSELECT SNO, PNO, QTYFROM

48、SPJWHERE JNO=( SELECT JNOFROM JWHERE JNAME=E');對該視圖查詢:(1) 找出三建工程項目使用的各種零件代碼及其數(shù)量。SELECT PNO, QTYFROM V_SPJ;(2) 找出供應商S1 的供應情況。SELECT PNO, QTY /* S供應三建工程的零件號和對應的數(shù)量*/FROM V_SPJWHERE SNO='S1'第四章 關系系統(tǒng)及其優(yōu)化一、選擇題1 .概念模型是現(xiàn)實世界的第一層抽象,這一類最著名的模型是() 。A.層次卞II型B.關系模型C.網(wǎng)狀模型D.實體-關系模型2 .區(qū)分不同實體的依據(jù)是() 。A. 名稱

49、B. 屬性 C. 對象 D. 概念3 .關系數(shù)據(jù)模型是目前最重要的一種數(shù)據(jù)模型,它的三個要素分別為() 。A.實體完整、參照完整、用戶自定義完整B.數(shù)據(jù)結(jié)構(gòu)、關系操作、完整性約束C數(shù)據(jù)增加、數(shù)據(jù)修改、數(shù)據(jù)查詢D.外模式、模式、內(nèi)模式4 .在()中一個結(jié)點可以有多個雙親,節(jié)點之間可以有多種聯(lián)系。A.網(wǎng)狀模型B.關系模型C層次模型 D.以上都有5 .()的存取路徑對用戶透明,從而具有更高的數(shù)據(jù)獨立性、更好的安全保密性,也簡化了程序員的工作和數(shù)據(jù)庫開發(fā)建立的工作。A.網(wǎng)狀模型B.關系模型D.層次卞II型D.以上都有6 .在關系數(shù)據(jù)庫中,要求基本關系中所有的主屬性上不能有空值,其遵守的約束規(guī)則是()。

50、A.數(shù)據(jù)依賴完整性規(guī)則B.用戶定義完整性規(guī)則C實體完整T規(guī)則 D.域完整性規(guī)則選擇題答案:(1) D (2) B (3) B (4) A (5) B (6) C二、簡答題1 .試述關系模型的三個組成部分。答:關系模型由關系數(shù)據(jù)結(jié)構(gòu)、關系操作集合和關系完整性約束三部分組成。2 .試述關系數(shù)據(jù)語言的特點和分類。答:關系數(shù)據(jù)語言可以分為三類:關系代數(shù)語言例如 ISBL關系演算語言( 元組關系演算語言例如APLHA, QUEL 和 域關系演算語言例如QBE)具有關系代數(shù)和關系演算雙重特點的語言例如 SQL這些關系數(shù)據(jù)語言的共同特點是,具有完備的表達能力,是非過程化的集合操作語言,功能強,能夠嵌入高級語

51、言中使用。3 . 定義并理解下列術語,說明它們之間的聯(lián)系與區(qū)別( 1)域,關系,元組,屬性答: 域:域是一組具有相同數(shù)據(jù)類型的值的集合。關系:在域 D1, D2,,Dn上笛卡爾積 D1XD2XX Dn的子集稱為關系,表示為R (D1, D2,,Dn)元組:關系中的每個元素是關系中的元組。屬性: 關系也是一個二維表,表的每行對應一個元組,表的每列對應一個域。由于域可以相同,為了加以區(qū)分,必須對每列起一個名字,稱為屬性(Attribute ) 。( 2)主碼,候選碼,外部碼答: 候選碼:若關系中的某一屬性組的值能唯一地標識一個元組,則稱該屬性組為候選碼( Candidate key) 。主碼:若一

52、個關系有多個候選碼,則選定其中一個為主碼(Primary key) 。外部碼:設 F 是基本關系R 的一個或一組屬性,但不是關系R 的碼, 如果 F 與基本關系S的主碼Ks相對應,則稱F是基本關系 R的外部碼(Foreign key),簡稱外碼?;娟P系R稱為參照關系(Referencing relation ),基本關系S稱為被參照關系(Referenced relation)或目標關系(Target relation)。關系R和S可以是相同的關系。(3)關系模式,關系,關系數(shù)據(jù)庫關系模式:關系的描述稱為關系模式(Relation Schema) 。它可以形式化地表示為:R( U, D, d

53、om, F)其中 R 為關系名,U 為組成該關系的屬性名集合,D 為屬性組U 中屬性所來自的域,dom為屬性向域的映象集合,F(xiàn) 為屬性間數(shù)據(jù)的依賴關系集合。關系:在域 D1, D2,,Dn上笛卡爾積 D1XD2XX Dn的子集稱為關系,表示為R (D1, D2,,Dn)關系是關系模式在某一時刻的狀態(tài)或內(nèi)容。關系模式是靜態(tài)的、穩(wěn)定的,而關系是動態(tài)的、隨時間不斷變化的,因為關系操作在不斷地更新著數(shù)據(jù)庫中的數(shù)據(jù)。關系數(shù)據(jù)庫:關系數(shù)據(jù)庫也有型和值之分。關系數(shù)據(jù)庫的型也稱為關系數(shù)據(jù)庫模式,是對關系數(shù)據(jù)庫的描述,它包括若干域的定義以及在這些域上定義的若干關系模式。關系數(shù)據(jù)庫的值是這些關系模式在某一時刻對應

54、的關系的集合,通常就稱為關系數(shù)據(jù)庫。4 .試述關系模型的完整性規(guī)則。在參照完整性中,為什么外部碼屬性的值也可以為空?什么情況下才可以為空?答: 關系模型的完整性規(guī)則是對關系的某種約束條件。關系模型中可以有三類完整性約束:實體完整性、參照完整性和用戶定義的完整性。其中實體完整性和參照完整性是關系模型必須滿足的完整性約束條件,被稱作是關系的兩個不變性,應該由關系系統(tǒng)自動支持。1) 實體完整性規(guī)則:若屬性A 是基本關系R 的主屬性,則屬性A 不能取空值。2) 參照完整性規(guī)則:若屬性(或?qū)傩越M)F 是基本關系R 的外碼,它與基本關系S 的主碼Ks相對應(基本關系R和S不一定是不同的關系),則對于R中每

55、個元組在F上的值必須為:或者取空值(F的每個屬性值均為空值);或者等于S中某個元組的主碼值。3) 用戶定義的完整性是針對某一具體關系數(shù)據(jù)庫的約束條件。它反映某一具體應用所 涉及的數(shù)據(jù)必須滿足的語義要求。在參照完整性中,外部碼屬性的值可以為空,它表示該屬性的值尚未確定。但前提條件是該外部碼屬性不是其所在關系的主屬性。例如,在下面的“學生”表中, “專業(yè)號”是一個外部碼,不是學生表的主屬性,可以 為空。其語義是,該學生的專業(yè)尚未確定。學生(學號,姓名,性別,專業(yè)號,年齡)專業(yè)(專業(yè)號,專業(yè)名)而在下面的“選修”表中的“課程號”雖然也是一個外部碼屬性,但它又是“選修”表 的主屬性,所以不能為空。因為關系模型必須滿足實體完整性。課程(課程號,課程名,學分)選修(學號,課程號,成績)5等值連接與

溫馨提示

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

評論

0/150

提交評論