數(shù)據(jù)庫系統(tǒng)概論習(xí)題集[51頁]
《數(shù)據(jù)庫系統(tǒng)概論習(xí)題集[51頁]》由會員分享,可在線閱讀,更多相關(guān)《數(shù)據(jù)庫系統(tǒng)概論習(xí)題集[51頁](52頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、數(shù)據(jù)庫系統(tǒng)概論習(xí)題集 第一章 緒論 一、選擇題 1. DBS是采用了數(shù)據(jù)庫技術(shù)的計算機(jī)系統(tǒng),DBS是一個集合體,包含數(shù)據(jù)庫、計算機(jī)硬件、軟件和(c ) 。 A. 系統(tǒng)分析員 B. 程序員 C. 數(shù)據(jù)庫管理員 D. 操作員 2. 數(shù)據(jù)庫(DB),數(shù)據(jù)庫系統(tǒng)(DBS)和數(shù)據(jù)庫管理系統(tǒng)(DBMS)之間的關(guān)系是( a)。 A. DBS包括DB和DBMS B. DBMS包括DB和DBS C. DB包括DBS和DBMS D. DBS就是DB,也就是DBMS 3. 下面列出的數(shù)據(jù)庫管理技術(shù)發(fā)展的三個階段中,沒有專門的軟件對數(shù)據(jù)進(jìn)行管理的是(d )
2、。 I.人工管理階段 II.文件系統(tǒng)階段 III.?dāng)?shù)據(jù)庫階段 A. I 和 II B. 只有 II C. II 和 III D. 只有 I 4. 下列四項(xiàng)中,不屬于數(shù)據(jù)庫系統(tǒng)特點(diǎn)的是(c ) 。 A. 數(shù)據(jù)共享 B. 數(shù)據(jù)完整性 C. 數(shù)據(jù)冗余度高 D. 數(shù)據(jù)獨(dú)立性高 5. 數(shù)據(jù)庫系統(tǒng)的數(shù)據(jù)獨(dú)立性體現(xiàn)在( bo) 。 A.不會因?yàn)閿?shù)據(jù)的變化而影響到應(yīng)用程序 B.不會因?yàn)橄到y(tǒng)數(shù)據(jù)存儲結(jié)構(gòu)與數(shù)據(jù)邏輯結(jié)構(gòu)的變化而影響應(yīng)用程序 C.不會因?yàn)榇鎯Σ呗缘淖兓绊懘鎯Y(jié)構(gòu) D.不會因?yàn)槟承┐鎯Y(jié)構(gòu)的變化而影響其
3、他的存儲結(jié)構(gòu) 6. 描述數(shù)據(jù)庫全體數(shù)據(jù)的全局邏輯結(jié)構(gòu)和特性的是( ) 。 A. 模式 B. 內(nèi)模式 C. 外模式 D. 用戶模式 7. 要保證數(shù)據(jù)庫的數(shù)據(jù)獨(dú)立性,需要修改的是( ) 。 A. 模式與外模式 B. 模式與內(nèi)模式 C. 三層之間的兩種映射 D. 三層模式 8. 要保證數(shù)據(jù)庫的邏輯數(shù)據(jù)獨(dú)立性,需要修改的是( ) 。 A. 模式與外模式的映射 B. 模式與內(nèi)模式之間的映射 C. 模式 D. 三層模式 9. 用戶或應(yīng)用程序看到的那部分局部邏輯結(jié)構(gòu)和特征的描述是( ),它是模式的邏輯子集。 A.模式 B. 物理
4、模式 C. 子模式 D. 內(nèi)模式 10.下述( )不是DBA數(shù)據(jù)庫管理員的職責(zé) 。 A.完整性約束說明 B. 定義數(shù)據(jù)庫模式 C.數(shù)據(jù)庫安全 D. 數(shù)據(jù)庫管理系統(tǒng)設(shè)計 選擇題答案: (1) C (2) A (3) D (4) C (5) B (6) A (7) C (8) A (9) C (10) D 二、簡答題 ?。保囀鰯?shù)據(jù)、數(shù)據(jù)庫、數(shù)據(jù)庫系統(tǒng)、數(shù)據(jù)庫管理系統(tǒng)的概念。 數(shù)據(jù): 描述事物的符號記錄稱為數(shù)據(jù)。數(shù)據(jù)的種類有文字、圖形、圖象、聲音、正文等等。數(shù)據(jù)與其語義是不可分的。 *解析:
5、 在現(xiàn)代計算機(jī)系統(tǒng)中數(shù)據(jù)的概念是廣義的。早期的計算機(jī)系統(tǒng)主要用于科學(xué)計算,處理的數(shù)據(jù)是整數(shù)、實(shí)數(shù)、浮點(diǎn)數(shù)等傳統(tǒng)數(shù)學(xué)中的數(shù)據(jù)等?,F(xiàn)在計算機(jī)能存儲和處理的對象十分廣泛,表示這些對象的 數(shù)據(jù)也越來越復(fù)雜。 數(shù)據(jù)與其語義是不可分的。500這個數(shù)字可以表示一件物品的價格是500元,也可以表示一個學(xué)術(shù)會議參加的人數(shù)有500人。還可以表示一袋奶粉重500克。 數(shù)據(jù)庫: 數(shù)據(jù)庫是長期儲存在計算機(jī)內(nèi)、有組織的、可共享的數(shù)據(jù)集合。數(shù)據(jù)庫中的數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和儲存,具有較小的冗余度、較高的數(shù)據(jù)獨(dú)立性和易擴(kuò)展性,并可為各種用戶共享。 *解析: 簡單地講,數(shù)據(jù)
6、數(shù)據(jù)庫數(shù)據(jù)具有永久儲存、有組織和可共享三個特點(diǎn)。 數(shù)據(jù)模型是數(shù)據(jù)庫的核心概念。每個數(shù)據(jù)庫中數(shù)據(jù)的都是按照某一種數(shù)據(jù)模型來組織的。 數(shù)據(jù)庫系統(tǒng): 數(shù)據(jù)庫系統(tǒng)(DBS)是指在計算機(jī)系統(tǒng)中引入數(shù)據(jù)庫后的系統(tǒng)構(gòu)成。數(shù)據(jù)庫系統(tǒng)由數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)(及其開發(fā)工具)、應(yīng)用系統(tǒng)、數(shù)據(jù)庫管理員構(gòu)成。 *解析: 數(shù)據(jù)庫系統(tǒng)和數(shù)據(jù)庫是兩個概念。數(shù)據(jù)庫系統(tǒng)是一個人-機(jī)系統(tǒng),數(shù)據(jù)庫是數(shù)據(jù)庫系統(tǒng)的一個組成部分。但是在日常工作中人們常常把把數(shù)據(jù)庫系統(tǒng)簡稱為數(shù)據(jù)庫。希望讀者能夠從人們講話或文章的上下文中區(qū)分“數(shù)據(jù)庫系統(tǒng)”和“數(shù)據(jù)庫”。 不要引起混淆。 數(shù)據(jù)庫管理系統(tǒng)
7、: 數(shù)據(jù)庫管理系統(tǒng)(DBMS)是位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件。用于科學(xué)地組織和存儲數(shù)據(jù)、高效地獲取和維護(hù)數(shù)據(jù)。DBMS主要功能包括數(shù)據(jù)定義功能、數(shù)據(jù)操縱功能、數(shù)據(jù)庫的運(yùn)行管理功能、數(shù)據(jù)庫的建立和維護(hù)功能。 *解析: DBMS是一個大型復(fù)雜的軟件系統(tǒng)。是計算機(jī)中的基礎(chǔ)軟件。目前,專門研制DBMS的廠商及其研制的DBMS產(chǎn)品很多。著名的有美國IBM公司的DB2關(guān)系數(shù)據(jù)庫管理系統(tǒng)、IMS層次數(shù)據(jù)庫管理系統(tǒng);美國ORACLE公司的ORACLE關(guān)系數(shù)據(jù)庫管理系統(tǒng);SYBASE公司的SYBASE關(guān)系數(shù)據(jù)庫管理系統(tǒng);美國微軟公司的SQL SERVER關(guān)系數(shù)據(jù)庫管理系統(tǒng)等等
8、。 ?。玻褂脭?shù)據(jù)庫系統(tǒng)有什么好處? 使用數(shù)據(jù)庫系統(tǒng)的好處是由數(shù)據(jù)庫管理系統(tǒng)的特點(diǎn)或優(yōu)點(diǎn)決定的。 使用數(shù)據(jù)庫系統(tǒng)的好處很多,例如可以大大提高應(yīng)用開發(fā)的效率,方便用戶的使用,減輕數(shù)據(jù)庫系統(tǒng)管理人員維護(hù)的負(fù)擔(dān)等。 為什么有這些好處,可以結(jié)合第5題來回答。 使用數(shù)據(jù)庫系統(tǒng)可以大大提高應(yīng)用開發(fā)的效率。因?yàn)樵跀?shù)據(jù)庫系統(tǒng)中應(yīng)用程序不必考慮數(shù)據(jù)的定義、存儲和數(shù)據(jù)存取的具體路徑,這些工作都由DBMS來完成。用一個通俗的比喻,使用了DBMS就如有了一個好參謀好助手,許多具體的技術(shù)工作都由這個助手來完成。開發(fā)人員就可以專注于應(yīng)用邏輯的設(shè)計而不必為管理數(shù)據(jù)的許許多多復(fù)
9、雜的細(xì)節(jié)操心。 還有,當(dāng)應(yīng)用邏輯改變,數(shù)據(jù)的邏輯結(jié)構(gòu)需要改變時,由于數(shù)據(jù)庫系統(tǒng)提供了數(shù)據(jù)與程序之間的獨(dú)立性。數(shù)據(jù)邏輯結(jié)構(gòu)的改變是DBA的責(zé)任,開發(fā)人員不必修改應(yīng)用程序,或者只需要修改很少的應(yīng)用程序。從而既簡化了應(yīng)用程序的編制,又大大減少了應(yīng)用程序的維護(hù)和修改。 使用數(shù)據(jù)庫系統(tǒng)可以減輕數(shù)據(jù)庫系統(tǒng)管理人員維護(hù)系統(tǒng)的負(fù)擔(dān)。因?yàn)镈BMS在數(shù)據(jù)庫建立、運(yùn)用和維護(hù)時對數(shù)據(jù)庫進(jìn)行統(tǒng)一的管理和控制,包括數(shù)據(jù)的完整性、安全性,多用戶并發(fā)控制,故障恢復(fù)等等都由DBMS執(zhí)行。 總之,使用數(shù)據(jù)庫系統(tǒng)的優(yōu)點(diǎn)是很多的,既便于數(shù)據(jù)的集中管理,控制數(shù)據(jù)冗余,可以提高數(shù)據(jù)的利用率和一致性,又有利于應(yīng)用程
10、序的開發(fā)和維護(hù)。讀者可以在自己今后的工作中結(jié)合具體應(yīng)用,認(rèn)真加以體會和總結(jié)。 ?。常囀鑫募到y(tǒng)與數(shù)據(jù)庫系統(tǒng)的區(qū)別和聯(lián)系。 文件系統(tǒng)與數(shù)據(jù)庫系統(tǒng)的區(qū)別: 文件系統(tǒng)面向某一應(yīng)用程序,共享性差、冗余度大,獨(dú)立性差,紀(jì)錄內(nèi)有結(jié)構(gòu)、整體無結(jié)構(gòu),應(yīng)用程序自己控制。 數(shù)據(jù)庫系統(tǒng)面向現(xiàn)實(shí)世界,共享性高、冗余度小,具有高度的物理獨(dú)立性和一定的邏輯獨(dú)立性,整體結(jié)構(gòu)化,用數(shù)據(jù)模型描述,由數(shù)據(jù)庫管理系統(tǒng)提供數(shù)據(jù)安全性、完整性、并發(fā)控制和恢復(fù)能力。 讀者可以參考《概論》書中表1.1 中的有關(guān)內(nèi)容。 文件系統(tǒng)與數(shù)據(jù)庫系統(tǒng)的聯(lián)系是: 文件系統(tǒng)與數(shù)據(jù)庫系統(tǒng)都是
11、計算機(jī)系統(tǒng)中管理數(shù)據(jù)的軟件。 *解析: 文件系統(tǒng)是操作系統(tǒng)的重要組成部分,而DBMS是獨(dú)立于操作系統(tǒng)的軟件。但是DBMS是在操作系統(tǒng)的基礎(chǔ)上實(shí)現(xiàn)的。數(shù)據(jù)庫中數(shù)據(jù)的組織和存儲是通過操作系統(tǒng)中文件系統(tǒng)來實(shí)現(xiàn)的。 讀者可以參考書中第十一章《數(shù)據(jù)庫管理系統(tǒng)》?;蛘哒f,讀者進(jìn)一步學(xué)習(xí)數(shù)據(jù)庫管理系統(tǒng)實(shí)現(xiàn)的有關(guān)課程(第十一章只是DBMS實(shí)現(xiàn)技術(shù)的概述)后可以對本題有深入的理解和全面的解答。因?yàn)镈BMS的實(shí)現(xiàn)與操作系統(tǒng)中的文件系統(tǒng)是緊密相關(guān)的。例如,數(shù)據(jù)庫實(shí)現(xiàn)的基礎(chǔ)是文件,對數(shù)據(jù)庫的任何操作最終要轉(zhuǎn)化為對文件的操作。所以在DBMS實(shí)現(xiàn)中數(shù)據(jù)庫物理組織的基本問題是如何利用或如何選擇操作系
12、統(tǒng)提供的基本的文件組織方法。這里我們就不具體展開了。 ?。矗e出適合用文件系統(tǒng)而不是數(shù)據(jù)庫系統(tǒng)的例子;再舉出適合用數(shù)據(jù)庫系統(tǒng)的應(yīng)用例子。 適用于文件系統(tǒng)而不是數(shù)據(jù)庫系統(tǒng)的應(yīng)用例子 數(shù)據(jù)的備份,軟件或應(yīng)用程序使用過程中的臨時數(shù)據(jù)存儲一般使用文件比較合適。 早期功能比較簡單、比較固定的應(yīng)用系統(tǒng)也適合用文件系統(tǒng)。 適用于數(shù)據(jù)庫系統(tǒng)而非文件系統(tǒng)的應(yīng)用例子 目前,幾乎所有企業(yè)或部門的信息系統(tǒng)都以數(shù)據(jù)庫系統(tǒng)為基礎(chǔ),都使用數(shù)據(jù)庫。如一個工廠的管理信息系統(tǒng)(其中會包括許多子系統(tǒng),如庫存管理系統(tǒng)、物資采購系統(tǒng)、作業(yè)調(diào)度系統(tǒng)、設(shè)備管理系統(tǒng)、人事管理系統(tǒng)等等),還比如
13、學(xué)校的學(xué)生管理系統(tǒng),人事管理系統(tǒng),圖書館的圖書管理系統(tǒng)等等都適合用數(shù)據(jù)庫系統(tǒng)。 希望同學(xué)們能舉出自己了解的應(yīng)用例子。 5.試述數(shù)據(jù)庫系統(tǒng)的特點(diǎn)。 數(shù)據(jù)庫系統(tǒng)的主要特點(diǎn)有: 一、數(shù)據(jù)結(jié)構(gòu)化 數(shù)據(jù)庫系統(tǒng)實(shí)現(xiàn)整體數(shù)據(jù)的結(jié)構(gòu)化,這是數(shù)據(jù)庫的主要特征之一,也是數(shù)據(jù)庫系統(tǒng)與文件系統(tǒng)的本質(zhì)區(qū)別。 *解析:注意這里“整體”兩個字。在數(shù)據(jù)庫系統(tǒng)中,數(shù)據(jù)不再針對某一個應(yīng)用,而是面向全組織,具有整體的結(jié)構(gòu)化。不僅數(shù)據(jù)是結(jié)構(gòu)化的,而且數(shù)據(jù)的存取單位即一次可以存取數(shù)據(jù)的大小也很靈活。可以小到某一個數(shù)據(jù)項(xiàng)(如一個學(xué)生的姓名),大到一組記錄(成千上萬個學(xué)生記錄)。而在文件系統(tǒng)
14、中,數(shù)據(jù)的存取單位只有一個:記錄。如一個學(xué)生的完整記錄。 二、數(shù)據(jù)的共享性高,冗余度低,易擴(kuò)充 數(shù)據(jù)庫的數(shù)據(jù)不再面向某個應(yīng)用而是面向整個系統(tǒng),因此可以被多個用戶、多個應(yīng)用、用多種不同的語言共享使用。由于數(shù)據(jù)面向整個系統(tǒng),是有結(jié)構(gòu)的數(shù)據(jù),不僅可以被多個應(yīng)用共享使用,而且容易增加新的應(yīng)用,這就使得數(shù)據(jù)庫系統(tǒng)彈性大,易于擴(kuò)充。 *解析: 數(shù)據(jù)共享可以大大減少數(shù)據(jù)冗余,節(jié)約存儲空間,同時還能夠避免數(shù)據(jù)之間的不相容性與不一致性。 所謂“數(shù)據(jù)面向某個應(yīng)用”是指數(shù)據(jù)結(jié)構(gòu)是針對某個應(yīng)用設(shè)計的,只被這個應(yīng)用程序或應(yīng)用系統(tǒng)使用??梢哉f數(shù)據(jù)是某個應(yīng)用的“私有資源”。
15、所謂“彈性大”是指系統(tǒng)容易擴(kuò)充也容易收縮,即應(yīng)用增加或減少時不必修改整個數(shù)據(jù)庫的結(jié)構(gòu),或者只要做很少的修改。 我們可以取整體數(shù)據(jù)的各種子集用于不同的應(yīng)用系統(tǒng),當(dāng)應(yīng)用需求改變或增加時,只要重新選取不同的子集或加上一部分?jǐn)?shù)據(jù)便可以滿足新的需求。 三、數(shù)據(jù)獨(dú)立性高 數(shù)據(jù)獨(dú)立性包括數(shù)據(jù)的物理獨(dú)立性和數(shù)據(jù)的邏輯獨(dú)立性。 數(shù)據(jù)庫管理系統(tǒng)的模式結(jié)構(gòu)和二級映象功能保證了數(shù)據(jù)庫中的數(shù)據(jù)具有很高的物理獨(dú)立性和邏輯獨(dú)立性。 *解析: 所謂“獨(dú)立性”即相互不依賴。數(shù)據(jù)獨(dú)立性是指數(shù)據(jù)和程序相互不依賴。即數(shù)據(jù)的邏輯結(jié)構(gòu)或物理結(jié)構(gòu)改變了,程序不會跟著改變。數(shù)據(jù)與程序
16、的獨(dú)立,把數(shù)據(jù)的定義從程序中分離出去,加上數(shù)據(jù)的存取又由DBMS負(fù)責(zé),簡化了應(yīng)用程序的編制,大大減少了應(yīng)用程序的維護(hù)和修改。 四、數(shù)據(jù)由DBMS統(tǒng)一管理和控制 數(shù)據(jù)庫的共享是并發(fā)的共享,即多個用戶可以同時存取數(shù)據(jù)庫中的數(shù)據(jù)甚至可以同時存取數(shù)據(jù)庫中同一個數(shù)據(jù)。為此,DBMS必須提供統(tǒng)一的數(shù)據(jù)控制功能,包括數(shù)據(jù)的安全性保護(hù),數(shù)據(jù)的完整性檢查,并發(fā)控制和數(shù)據(jù)庫恢復(fù)。 *解析: DBMS數(shù)據(jù)控制功能包括四個方面: 數(shù)據(jù)的安全性保護(hù):保護(hù)數(shù)據(jù)以防止不合法的使用造成的數(shù)據(jù)的泄密和破壞; 數(shù)據(jù)的完整性檢查:將數(shù)據(jù)控制在有效的范圍內(nèi)或保證數(shù)據(jù)之間滿足一
17、定的關(guān)系; 并發(fā)控制:對多用戶的并發(fā)操作加以控制和協(xié)調(diào),保證并發(fā)操作的正確性; 數(shù)據(jù)庫恢復(fù):當(dāng)計算機(jī)系統(tǒng)發(fā)生硬件故障、軟件故障,或者由于操作員的失誤以及故意的破壞影響數(shù)據(jù)庫中數(shù)據(jù)的正確性,甚至造成數(shù)據(jù)庫部分或全部數(shù)據(jù)的丟失時,能將數(shù)據(jù)庫從錯誤狀態(tài)恢復(fù)到某一已知的正確狀態(tài)(亦稱為完整狀態(tài)或一致狀態(tài))。 下面我們可以得到“什么是數(shù)據(jù)庫”的一個定義: 數(shù)據(jù)庫是長期存儲在計算機(jī)內(nèi)有組織的大量的共享的數(shù)據(jù)集合。它可以供各種用戶共享,具有最小冗余度和較高的數(shù)據(jù)獨(dú)立性。DBMS在數(shù)據(jù)庫建立、運(yùn)用和維護(hù)時對數(shù)據(jù)庫進(jìn)行統(tǒng)一控制,以保證數(shù)據(jù)的完整性、安全性,并在多用戶同時使用數(shù)據(jù)
18、庫時進(jìn)行并發(fā)控制,在發(fā)生故障后對系統(tǒng)進(jìn)行恢復(fù)。 數(shù)據(jù)庫系統(tǒng)的出現(xiàn)使信息系統(tǒng)從以加工數(shù)據(jù)的程序?yàn)橹行霓D(zhuǎn)向圍繞共享的數(shù)據(jù)庫為中心的新階段。 ?。叮?dāng)?shù)據(jù)庫管理系統(tǒng)的主要功能有哪些? ①數(shù)據(jù)庫定義功能; ?、跀?shù)據(jù)存取功能; ?、蹟?shù)據(jù)庫運(yùn)行管理; ?、軘?shù)據(jù)庫的建立和維護(hù)功能。 7.試述數(shù)據(jù)模型的概念、數(shù)據(jù)模型的作用和數(shù)據(jù)模型的三個要素。 數(shù)據(jù)模型是數(shù)據(jù)庫中用來對現(xiàn)實(shí)世界進(jìn)行抽象的工具,是數(shù)據(jù)庫中用于提供信息表示和操作手段的形式構(gòu)架。 一般地講,數(shù)據(jù)模型是嚴(yán)格定義的概念的集合。這些概念精確地描述系統(tǒng)的靜態(tài)特性、動態(tài)特性和完整性約束條
19、件。因此數(shù)據(jù)模型通常由數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作和完整性約束三部分組成。 ?、贁?shù)據(jù)結(jié)構(gòu):是所研究的對象類型的集合,是對系統(tǒng)的靜態(tài)特性的描述。 ?、跀?shù)據(jù)操作:是指對數(shù)據(jù)庫中各種對象(型)的實(shí)例(值)允許進(jìn)行的操作的集合,包括操作及有關(guān)的操作規(guī)則,是對系統(tǒng)動態(tài)特性的描述。 ?、蹟?shù)據(jù)的約束條件:是完整性規(guī)則的集合,完整性規(guī)則是給定的數(shù)據(jù)模型中數(shù)據(jù)及其聯(lián)系所具有的制約和依存規(guī)則,用以限定符合數(shù)據(jù)模型的數(shù)據(jù)庫狀態(tài)以及狀態(tài)的變化,以保證數(shù)據(jù)的正確、有效、相容。 *解析: 數(shù)據(jù)模型是數(shù)據(jù)庫系統(tǒng)中最重要的概念之一。同學(xué)們必須通過《概論》的學(xué)習(xí)真正掌握 數(shù)據(jù)模型的概念和作用。
20、 數(shù)據(jù)模型是數(shù)據(jù)庫系統(tǒng)的基礎(chǔ)。任何一個DBMS都以某一個數(shù)據(jù)模型為基礎(chǔ),或者說支持某一個數(shù)據(jù)模型。 數(shù)據(jù)庫系統(tǒng)中模型有不同的層次。根據(jù)模型應(yīng)用的不同目的,可以將模型分成兩類或說兩個層次:一是概念模型,是按用戶的觀點(diǎn)來對數(shù)據(jù)和信息建模,用于信息世界的建模,強(qiáng)調(diào)語義表達(dá)能力,概念簡單清晰;另一是數(shù)據(jù)模型,是按計算機(jī)系統(tǒng)的觀點(diǎn)對數(shù)據(jù)建模,用于機(jī)器世界,人們可以用它定義、操縱數(shù)據(jù)庫中的數(shù)據(jù)。一般需要有嚴(yán)格的形式化定義和一組嚴(yán)格定義了語法和語義的語言,并有一些規(guī)定和限制,便于在機(jī)器上實(shí)現(xiàn)。 ?。福囀龈拍钅P偷淖饔谩? 概念模型實(shí)際上是現(xiàn)實(shí)世界到機(jī)器世界的一個中間層次
21、。概念模型用于信息世界的建模,是現(xiàn)實(shí)世界到信息世界的第一層抽象,是數(shù)據(jù)庫設(shè)計人員進(jìn)行數(shù)據(jù)庫設(shè)計的有力工具,也是數(shù)據(jù)庫設(shè)計人員和用戶之間進(jìn)行交流的語言。 9.定義并解釋概念模型中以下術(shù)語: 實(shí)體,實(shí)體型,實(shí)體集,屬性,碼,實(shí)體聯(lián)系圖(E-R圖) 實(shí)體:客觀存在并可以相互區(qū)分的事物叫實(shí)體。 實(shí)體型:具有相同屬性的實(shí)體具有相同的特征和性質(zhì),用實(shí)體名及其屬性名集合來抽象和刻畫同類實(shí)體稱為實(shí)體型。 實(shí)體集:同型實(shí)體的集合稱為實(shí)體集。 屬性:實(shí)體所具有的某一特性,一個實(shí)體可由若干個屬性來刻畫。 碼:唯一標(biāo)識實(shí)體的屬性集稱為碼。 實(shí)體聯(lián)系圖:E
22、-R圖提供了表示實(shí)體型、屬性和聯(lián)系的方法: 實(shí)體型:用矩形表示,矩形框內(nèi)寫明實(shí)體名。 屬性:用橢圓形表示,并用無向邊將其與相應(yīng)的實(shí)體連接起來。 聯(lián)系:用菱形表示,菱形框內(nèi)寫明聯(lián)系名,并用無向邊分別與有關(guān)實(shí)體連接起來,同時在無向邊旁標(biāo)上聯(lián)系的類型(1 : 1,1 : n或m : n)。 10.試給出三個實(shí)際部門的E-R圖,要求實(shí)體型之間具有一對一,一對多,多對多各種不同的聯(lián)系。 第二章 關(guān)系數(shù)據(jù)庫 一、選擇題 1. 下面的選項(xiàng)不是關(guān)系數(shù)據(jù)庫基本特征的是( )。 A.不同的列應(yīng)有不同的數(shù)據(jù)類型 B.不同的列應(yīng)有不同的列名
23、 C.與行的次序無關(guān) D.與列的次序無關(guān) 2. 一個關(guān)系只有一個( ) 。 A.候選碼 B. 外碼 C. 超碼 D. 主碼 3. 關(guān)系模型中,一個碼是( )。 A.可以由多個任意屬性組成 B.至多由一個屬性組成 C.可有多個或者一個其值能夠唯一表示該關(guān)系模式中任何元組的屬性組成 D.以上都不是 4. 現(xiàn)有如下關(guān)系: 患者(患者編號,患者姓名,性別,出生日起,所在單位) 醫(yī)療(患者編號,患者姓名,醫(yī)生編號,醫(yī)生姓名,診斷日期,診斷結(jié)果) 其中,醫(yī)療關(guān)系中的外碼是( )。 A. 患者編號 B
24、. 患者姓名 C. 患者編號和患者姓名 D. 醫(yī)生編號和患者編號 5. 現(xiàn)有一個關(guān)系:借閱(書號,書名,庫存數(shù),讀者號,借期,還期),假如同一本書允許一個讀者多次借閱,但不能同時對一種書借多本,則該關(guān)系模式的外碼是( )。 A. 書號 B. 讀者號 C. 書號+讀者號 D. 書號+讀者號+借期 6. 關(guān)系模型中實(shí)現(xiàn)實(shí)體間 N:M 聯(lián)系是通過增加一個( ) 。 A.關(guān)系實(shí)現(xiàn) B. 屬性實(shí)現(xiàn) C. 關(guān)系或一個屬性實(shí)現(xiàn) D. 關(guān)系和一個屬性實(shí)現(xiàn) 7. 關(guān)系代數(shù)運(yùn)算是以( )為基礎(chǔ)的運(yùn)算 。 A. 關(guān)系運(yùn)算 B. 謂詞演算 C. 集合運(yùn)算
25、 D. 代數(shù)運(yùn)算 8. 關(guān)系數(shù)據(jù)庫管理系統(tǒng)應(yīng)能實(shí)現(xiàn)的專門關(guān)系運(yùn)算包括( )。 A. 排序、索引、統(tǒng)計 B. 選擇、投影、連接 C. 關(guān)聯(lián)、更新、排序 D. 顯示、打印、制表 9. 五種基本關(guān)系代數(shù)運(yùn)算是( )。 A.∪ - σ π B.∪ - σ π C.∪ ∩ σ π D.∪ ∩ σ π 10. 關(guān)系代數(shù)表達(dá)式的優(yōu)化策略中,首先要做的是( ) 。 A.對文件進(jìn)行預(yù)處理 B.盡早執(zhí)行選擇運(yùn)算 C.執(zhí)行笛卡爾積運(yùn)算 D.投影運(yùn)算 11. 關(guān)系數(shù)據(jù)庫中的投影操作是指從關(guān)系中( ) 。
26、 A.抽出特定記錄 B. 抽出特定字段 C.建立相應(yīng)的影像 D. 建立相應(yīng)的圖形 12. 從一個數(shù)據(jù)庫文件中取出滿足某個條件的所有記錄形成一個新的數(shù)據(jù)庫文件的操作是( )操作 。 A.投影 B. 聯(lián)接 C. 選擇 D. 復(fù)制 13. 關(guān)系代數(shù)中的聯(lián)接操作是由( )操作組合而成 。 A.選擇和投影 B. 選擇和笛卡爾積 C.投影、選擇、笛卡爾積 D. 投影和笛卡爾積 14. 自然聯(lián)接是構(gòu)成新關(guān)系的有效方法。一般情況下,當(dāng)對關(guān)系R和S是用自然聯(lián)接時,要求R和S含有一個或者多個共有的( ) 。 A.記錄 B. 行 C. 屬性 D
27、. 元組 15. 假設(shè)有關(guān)系R和S,在下列的關(guān)系運(yùn)算中,( )運(yùn)算不要求:“R和S具有相同的元數(shù),且它們的對應(yīng)屬性的數(shù)據(jù)類型也相同” 。 A.R∩S B. R∪S C. R-S D. RS 16. 假設(shè)有關(guān)系R和S,關(guān)系代數(shù)表達(dá)式R-(R-S)表示的是( )。 A.R∩S B. R∪S C. R-S D. RS 17. 下面列出的關(guān)系代數(shù)表達(dá)是中,那些式子能夠成立( ) 。 ?、? σf1 ( σf2 (E)) = σf1∧f2 (E) ?、? E1∞E2 = E2∞E1 ?、? (E1∞E2)∞E3 = E1∞ (E2∞E3)
28、?、? σf1 ( σf2 (E)) =σf2 ( σf1(E)) A.全部 B. ⅱ和ⅲ C. 沒有 D. ⅰ和ⅳ 18. 下面四個關(guān)系表達(dá)式是等價的,是判別它們的執(zhí)行效率( ) 。 E1 =πA (σ B=C ∧ D=E′ (RS) ) E2 =πA (σ B=C (R σD=E′ (S) ) E3 =πA (R∞B=CσD=E′(S) ) E3 =πA (σD=E′ (R∞B=C S) ) A. E3最快 B. E2最快 C. E4最快 D. E1最快 19. 有關(guān)系SC(S_ID,C_ID,AGE,SCORE),查找年齡大
29、于22歲的學(xué)生的學(xué)號和分?jǐn)?shù),正確的關(guān)系代數(shù)表達(dá)式是( ) 。 ?、? πS_ID,SCORE (σ age>22 (SC) ) ⅱ. σ age>22 (πS_ID,SCORE (SC) ) ⅲ. πS_ID,SCORE (σ age>22 (πS_ID,SCORE,AGE (SC) ) ) A.ⅰ和 ⅱ B. 只有ⅱ正確 C. 只有 ⅰ正確 D. ⅰ和ⅲ正確 選擇題答案: (1) A (2) D (3) C (4) A (5) D (6) A (7) C (8) B (9) A (10) B (11) B (12) C (
30、13) B (14) C (15) D (16) A (17) C (18) A (19) D 二、簡答題 1. 試述關(guān)系模型的三個組成部分。 2. 試述關(guān)系數(shù)據(jù)語言的特點(diǎn)和分類。 3.設(shè)有一個SPJ數(shù)據(jù)庫,包括S,P,J,SPJ四個關(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)(S
31、TATUS)、供應(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ù)量為QTY。 試用關(guān)系代數(shù)完成如下查詢: ?。?) 求供應(yīng)工程J1零件的供應(yīng)商號碼SNO; (2) 求供應(yīng)工程J1零件P1的供應(yīng)商號碼SNO; (3) 求供應(yīng)工程J1零件為紅色的供
32、應(yīng)商號碼SNO; ?。?) 求沒有使用天津供應(yīng)商生產(chǎn)的紅色零件的工程號JNO; ?。?) 求至少用了供應(yīng)商S1所供應(yīng)的全部零件的工程號JNO。 4. 定義并理解下列術(shù)語,說明它們之間的聯(lián)系與區(qū)別: (1)域,笛卡爾積,關(guān)系,元組,屬性 (2)主碼,候選碼,外碼 (3)關(guān)系模式,關(guān)系,關(guān)系數(shù)據(jù)庫 5. 試述關(guān)系模型的完整性規(guī)則。在參照完整性中,為什么外碼屬性的值有時也可以為空?什么情況下才可以為空? 6. 試述等值連接與自然連接的區(qū)別和聯(lián)系。 7. 關(guān)系代數(shù)的基本運(yùn)算有哪些? 8. 試用關(guān)系代數(shù)的基本運(yùn)算來表示其他
33、運(yùn)算。 第三章 SQL語言 一、選擇題 1. SQL語言是( )的語言,容易學(xué)習(xí) 。 A.過程化 B. 非過程化 C.格式化 D. 導(dǎo)航式 2. SQL語言的數(shù)據(jù)操縱語句包括SELECT、INSERT、UPDATE、DELETE等。其中最重要的,也是使用最頻繁的語句是( ) 。 A. SELECT B. INSERT C. UPDATE D. DELETE 3. 在視圖上不能完成的操作是( ) 。 A. 更新視圖 B. 查詢 C. 在視圖上定義新的表 D. 在視圖上定義新的視圖 4. SQL語言集數(shù)據(jù)
34、查詢、數(shù)據(jù)操縱、數(shù)據(jù)定義和數(shù)據(jù)控制功能于一體,其中,CREATE、DROP、ALTER語句是實(shí)現(xiàn)哪種功能( )。 A. 數(shù)據(jù)查詢 B. 數(shù)據(jù)操縱 C. 數(shù)據(jù)定義 D. 數(shù)據(jù)控制 5. SQL語言中,刪除一個視圖的命令是( )。 A.DELETE B.DROP C.CLEAR D.REMOVE 6. 在SQL語言中的視圖VIEW是數(shù)據(jù)庫的( ) 。 A. 外模式 B. 模式 C. 內(nèi)模式 D. 存儲模式 7. 下列的SQL語句中,( )不是數(shù)據(jù)定義語句。 A. CREATE TABLE B. DROP VIE
35、W C. CREATE VIEW D. GRANT 8. 若要撤銷數(shù)據(jù)庫中已經(jīng)存在的表S,可用( )。 A. DELETE TABLE S B. DELETE S C. DROP TABLE S D. DROP S 9. 若要在基本表S中增加一列CN(課程名),可用( )。 A.ADD TABLE S(CN CHAR(8)) B.ADD TABLE S ALTER(CN CHAR(8)) C.ALTER TABLE S ADD(CN CHAR(8)) D.ALTER TABLE S (ADD CN CHAR(8))
36、 10. 學(xué)生關(guān)系模式 S( S#,Sname,Sex,Age),S的屬性分別表示學(xué)生的學(xué)號、姓名、性別、年齡。要在表S中刪除一個屬性“年齡”,可選用的SQL語句是( )。 A. DELETE Age from S B. ALTER TABLE S DROP Age C. UPDATE S Age D. ALTER TABLE S ‘Age’ 11. 有關(guān)系S(S#,SNAME,SAGE),C(C#,CNAME),SC(S#,C#,GRADE)。其中S#是學(xué)生號,SNAME是學(xué)生姓名,SAGE是學(xué)生年齡, C#是課程號,CNAME是課程名稱。要查詢選修“
37、ACCESS”課的年齡不小于20的全體學(xué)生姓名的SQL語句是SELECT SNAME FROM S,C,SC WHERE子句。這里的WHERE子句的內(nèi)容是( )。 A. S.S# = SC.S# and C.C# = SC.C# and SAGE>=20 and CNAME=‘ACCESS’ B. S.S# = SC.S# and C.C# = SC.C# and SAGE in>=20 and CNAME in ‘ACCESS’ C. SAGE in>=20 and CNAME in ‘ACCESS’ D. SAGE>=20 and CNAME=’ ACCES
38、S’ 12. 設(shè)關(guān)系數(shù)據(jù)庫中一個表S的結(jié)構(gòu)為S(SN,CN,grade),其中SN為學(xué)生名,CN為課程名,二者均為字符型;grade為成績,數(shù)值型,取值范圍0-100。若要把“張二的化學(xué)成績80分”插入S中,則可用( )。 A. ADD INTO S VALUES(’張二’,’化學(xué)’,’80’) B. INSERT INTO S VALUES(’張二’,’化學(xué)’,’80’) C. ADD INTO S VALUES(’張二’,’化學(xué)’,80) D. INSERT INTO S
39、 VALUES(’張二’,’化學(xué)’,80) 13. 設(shè)關(guān)系數(shù)據(jù)庫中一個表S的結(jié)構(gòu)為:S(SN,CN,grade),其中SN為學(xué)生名,CN為課程名,二者均為字符型;grade為成績,數(shù)值型,取值范圍0-100。若要更正王二的化學(xué)成績?yōu)?5分,則可用( ) 。 A. UPDATE S SET grade=85 WHERE SN=’王二’ AND CN=’化學(xué)’ B. UPDATE S SET grade=’85’ WHERE SN=’王二’ AND CN=’化學(xué)’ C. UPDATE grade=85 WHERE S
40、N=’王二’ AND CN=’化學(xué)’ D. UPDATE grade=’85’ WHERE SN=’王二’ AND CN=’化學(xué)’ 14. 在SQL語言中,子查詢是( ) 。 A. 返回單表中數(shù)據(jù)子集的查詢語言 B. 選取多表中字段子集的查詢語句 C. 選取單表中字段子集的查詢語句 D. 嵌入到另一個查詢語句之中的查詢語句 15. SQL是一種( )語言。 A. 高級算法 B. 人工智能 C. 關(guān)系數(shù)據(jù)庫 D. 函數(shù)型 16. 有關(guān)系S(S#,SNAME,SEX),C(C#,CNAME),SC(S#,C#
41、,GRADE)。其中S#是學(xué)生號,SNAME是學(xué)生姓名,SEX是性別, C#是課程號,CNAME是課程名稱。要查詢選修“數(shù)據(jù)庫”課的全體男生姓名的SQL語句是SELECT SNAME FROM S,C,SC WHERE子句。這里的WHERE子句的內(nèi)容是( )。 A.S.S# = SC.S# and C.C# = SC.C# and SEX=’男’ and CNAME=’數(shù)據(jù)庫’ B.S.S# = SC.S# and C.C# = SC.C# and SEX in’男’and CNAME in’數(shù)據(jù)庫’ C.SEX ’男’ and CNAME ’ 數(shù)據(jù)庫’ D.S
42、.SEX=’男’ and CNAME=’ 數(shù)據(jù)庫’ 17. 若用如下的SQL語句創(chuàng)建了一個表SC: CREATE TABLE SC (S# CHAR(6) NOT NULL,C# CHAR(3) NOT NULL,SCORE INTEGER,NOTE CHAR(20));向SC表插入如下行時,( )行可以被插入 。 A.(’201009’,’111’,60,必修) B.(’200823’,’101’,NULL,NULL) C.(NULL,’103’,80,’選修’) D.(’201132’,NULL,86,’ ’) 18. 假設(shè)學(xué)生關(guān)系S
43、(S#,SNAME,SEX),課程關(guān)系C(C#,CNAME),學(xué)生選課關(guān)系SC(S#,C#,GRADE)。要查詢選修“Computer”課的男生姓名,將涉及到關(guān)系( )。 A. S B. S,SC C. C,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語言的特點(diǎn)。
44、 答: (1)綜合統(tǒng)一。 SQL語言集數(shù)據(jù)定義語言DDL、數(shù)據(jù)操縱語言DML、數(shù)據(jù)控制語言DCL的功能于一體。 (2)高度非過程化。用SQL語言進(jìn)行數(shù)據(jù)操作,只要提出“做什么”,而無須指明“怎么做”,因此無需了解存取路徑,存取路徑的選擇以及SQL語句的操作過程由系統(tǒng)自動完成。 ?。?)面向集合的操作方式。SQL語言采用集合操作方式,不僅操作對象、查找結(jié)果可以是元組的集合,而且一次插入、刪除、更新操作的對象也可以是元組的集合。 ?。?)以同一種語法結(jié)構(gòu)提供兩種使用方式。SQL語言既是自含式語言,又是嵌入式語言。作為自含式語言,它能夠獨(dú)立地用于聯(lián)機(jī)交互的使用方式,也能夠
45、嵌入到高級語言程序中,供程序員設(shè)計程序時使用。 ?。?)語言簡捷,易學(xué)易用。 2. 試述SQL的定義功能。 答: SQL的數(shù)據(jù)定義功能包括定義表、定義視圖和定義索引。 SQL語言使用CREATE TABLE語句定義建立基本表,;ALTER TABLE語句修改基本表定義,DROP TABLE語句刪除基本表;建立索引使用CREATE INDEX語句建立索引, DROP INDEX語句刪除索引表;SQL語言使用CREATE VIEW命令建立視圖,DROP VIEW語句刪除視圖。 3. 用SQL語句建立第3章習(xí)題3中的四個表。 答: 對于S表
46、: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,CITY)
47、; 建J表 CREATE TABLE J (JNO CHAR(3), JNAME CHAR(10), CITY CHAR(10)); SPJ(SNO,PNO,JNO,QTY); 建SPJ表 CREATE TABLE SPJ (SNO CHAR(3), PNO CHAR(3), JNO CHAR(3), QTY INT); 4. 針對上題中建立的四個表試用SQL語言完成第3章習(xí)題3中的查詢。 答: (1) 求供應(yīng)工程J1零件的供應(yīng)商號碼SNO; SEL
48、ECT SNO FROM SPJ WHERE JNO=‘J1’; ?。?) 求供應(yīng)工程J1零件P1的供應(yīng)商號碼SNO; SELECT SNO FROM SPJ WHERE JNO=‘J1’ AND PNO=‘P1’; ?。?) 求供應(yīng)工程J1零件為紅色的供應(yīng)商號碼SNO; SELECT SNO FROM SPJ WHERE JNO=‘J1’ AND PNO IN (SELECT PNO FROM P WHERE COLOR=‘紅’); 或
49、 SELECT SNO FROM SPJ,P WHERE JNO=‘J1’ AND SPJ.PNO=P.PNO AND COLOR=‘紅’; ?。?) 求沒有使用天津供應(yīng)商生產(chǎn)的紅色零件的工程號JNO; 解析: 用SQL語言表示如下: SELECT JNO FROM J WHERE NOT EXISTS (SELECT * FROM SPJ WHERE SPJ.JNO=J.JNO AND SNO IN (SELECT SNO FROM S
50、 WHERE CITY=‘天津’) AND PNO IN (SELECT PNO FROM P WHERE COLOR=‘紅’)); 或 SELECT JNO FROM J WHERE NOT EXISTS (SELECT *1 FROM SPJ, S, P WHERE SPJ.JNO=J.JNO AND SPJ.SNO=S.SNO AND SPJ.PNO=P.PNO AND S.CITY=‘天津’ AND P. COLOR=‘紅’);
51、 注意:從 J 表入手,以包含那些尚未使用任何零件的工程號。 (5) 求至少用了供應(yīng)商S1所供應(yīng)的全部零件的工程號JNO 。 解析: 用SQL語言表示如下: SELECT DISTINCT JNO FROM SPJ SPJZ WHERE NOT EXISTS (SELECT * FROM SPJ SPJX WHERE SNO=S1 AND NOT EXISTS (SELECT * FROM SPJ SPJY WHERE SPJY.PNO=SPJX.PNO
52、 AND SPJY.JNON=SPJZ.JNO AND SPJY.SNO=’S1’)); AND SPJY.SNO=S1 )); 5. 針對習(xí)題3中的四個表試用SQL語言完成以下各項(xiàng)操作: (1)找出所有供應(yīng)商的姓名和所在城市。 (2)找出所有零件的名稱、顏色、重量。 (3)找出使用供應(yīng)商S1所供應(yīng)零件的工程號碼。 (4)找出工程項(xiàng)目J2使用的各種零件的名稱及其數(shù)量。 (5)找出上海廠商供應(yīng)的所有零件號碼。 (6)找出使用上海產(chǎn)的零件的工程名稱。 (7)找出沒有使用天津產(chǎn)的零件的工程號
53、碼。 (8)把全部紅色零件的顏色改成藍(lán)色。 (9)由S5供給J4的零件P6改為由S3供應(yīng),請作必要的修改。 (10)從供應(yīng)商關(guān)系中刪除S2的記錄,并從供應(yīng)情況關(guān)系中刪除相應(yīng)的記錄。 (11)請將 (S2,J6,P4,200) 插入供應(yīng)情況關(guān)系。 答: (1) 找出所有供應(yīng)商的姓名和所在城市。 SELECT SNAME, CITY FROM S; (2) 找出所有零件的名稱、顏色、重量。 SELECT PNAME, COLOR, WEIGHT FROM P; (3) 找出使用供應(yīng)商S1
54、所供應(yīng)零件的工程號碼。 SELECT JNO FROM SPJ WHERE SNO=‘S1’; (4) 找出工程項(xiàng)目J2使用的各種零件的名稱及其數(shù)量。 SELECT P.PNAME, SPJ.QTY FROM P, SPJ WHERE P.PNO=SPJ.PNO AND SPJ.JNO=J2; (5) 找出上海廠商供應(yīng)的所有零件號碼。 SELECT DISTINCT PNO FROM SPJ WHERE SNO IN (SELECT SNO FROM S
55、 WHERE CITY=上海); (6) 找出使用上海產(chǎn)的零件的工程名稱。 SELECT JNAME FROM J, SPJ, S WHERE J. JNO=SPJ. JNO AND SPJ. SNO=S.SNO AND S.CITY=上海; 或 SELECT JNAME FROM J WHERE JNO IN (SELECT JNO FROM SPJ, S WHERE SPJ. SNO=S.SNO AND S.CITY=上海); (7)
56、 找出沒有使用天津產(chǎn)的零件的工程號碼。 SELECT JNO FROM J WHERE NOT EXISTS (SELECT * FROM SPJ WHERE SPJ.JNO=J.JNO AND SNO IN (SELECT SNO FROM S WHERE CITY=‘天津’)); 或 SELECT JNO FROM J WHERE NOT EXISTS (SELECT *1 FROM SPJ, S WHERE SPJ.JNO=J.J
57、NO AND SPJ.SNO=S.SNO AND S.CITY=‘天津’); (8) 把全部紅色零件的顏色改成藍(lán)色。 UPDATE P SET COLOR=藍(lán) WHERE COLOR=紅 ; (9) 由S5供給J4的零件P6改為由S3供應(yīng),請作必要的修改。 UPDATE SPJ SET SNO=S3 WHERE SNO=S5 AND JNO=J4 AND PNO=P6; (10) 從供應(yīng)商關(guān)系中刪除S2的記錄,并從供應(yīng)情況關(guān)系中刪除相應(yīng)的記錄。 DELETE FROM SPJ
58、 WHERE SNO=S2; 或 DELETE FROM S WHERE SNO=S2; 解析:注意刪除順序,應(yīng)該先從SPJ表中刪除供應(yīng)商S2所供應(yīng)零件的記錄,然后從從S表中刪除S2。 (11) 請將 (S2,J6,P4,200) 插入供應(yīng)情況關(guān)系。 INSERT INTO SPJ(SNO, JNO, PNO, QTY) VALUES (S2,J6,P4,200); 或 INSERT INTO SPJ VALUES (S2,P4,J6,200); 6. 什么是基本表?什么是視
59、圖?兩者的區(qū)別和聯(lián)系是什么? 答:基本表是本身獨(dú)立存在的表,在SQL中一個關(guān)系就對應(yīng)一個表。 視圖是從一個或幾個基本表導(dǎo)出的表。視圖本身不獨(dú)立存儲在數(shù)據(jù)庫中,是一個虛表。即數(shù)據(jù)庫中只存放視圖的定義而不存放視圖對應(yīng)的數(shù)據(jù),這些數(shù)據(jù)仍存放在導(dǎo)出視圖的基本表中。視圖在概念上與基本表等同,用戶可以如同基本表那樣使用視圖,可以在視圖上再定義視圖。 7. 試述視圖的優(yōu)點(diǎn)。 答:(1)視圖能夠簡化用戶的操作。 (2)視圖使用戶能以多種角度看待同一數(shù)據(jù)。 (3)視圖對重構(gòu)數(shù)據(jù)庫提供了一定程度的邏輯獨(dú)立性。 (4)視圖能夠?qū)C(jī)密數(shù)據(jù)提供安全保護(hù)。
60、 8. 所有的視圖是否都可以更新?為什么? 答:不是。視圖是不實(shí)際存儲數(shù)據(jù)的虛表,因此對視圖的更新,最終要轉(zhuǎn)換為對基本表的更新。因?yàn)橛行┮晥D的更新不能唯一地有意義地轉(zhuǎn)換成對相應(yīng)基本表的更新,所以,并不是所有的視圖都是可更新的。如《概論》3.5.1中的視圖S_G(學(xué)生的學(xué)號及他的平均成績) CREAT VIEW S_G(Sno,Gavg) AS SELECT Sno,AVG(Grade) FROM SC GROUP BY Sno; 要修改平均成績,必須修改各科成績,而我們無法知道哪些課程成績的變化導(dǎo)致了平均成績的變化。
61、 9. 哪類視圖是可以更新的,哪類視圖是不可更新的? 各舉一例說明。 答:基本表的行列子集視圖一般是可更新的。如《概論》3.5.3中的例1。 若視圖的屬性來自集函數(shù)、表達(dá)式,則該視圖肯定是不可以更新的。 如《概論》3.5.3中的S_G視圖。 10. 試述某個你熟悉的實(shí)際系統(tǒng)中對視圖更新的規(guī)定。 答:(略) 解析:不同的系統(tǒng)對視圖更新的規(guī)定是不同的,讀者必須了解你所用系統(tǒng)對視圖更新的規(guī)定。 11. 請為三建工程項(xiàng)目建立一個供應(yīng)情況的視圖,包括供應(yīng)商代碼(SNO)、零件 代碼(PNO)、供應(yīng)數(shù)量(QTY)。針對該視圖完成下列查詢:
62、 (1)找出三建工程項(xiàng)目使用的各種零件代碼及其數(shù)量。 (2)找出供應(yīng)商S1的供應(yīng)情況。 答:建視圖: CREATE VIEW V_SPJ AS SELECT SNO, PNO, QTY FROM SPJ WHERE JNO= (SELECT JNO FROM J WHERE JNAME=三建); 對該視圖查詢: (1) 找出三建工程項(xiàng)目使用的各種零件代碼及其數(shù)量。 SELECT PNO, QTY FROM V_SPJ; (2) 找出供應(yīng)商S1的供應(yīng)
63、情況。 SELECT PNO, QTY /* S1供應(yīng)三建工程的零件號和對應(yīng)的數(shù)量*/ FROM V_SPJ WHERE SNO=S1; 第四章 關(guān)系系統(tǒng)及其優(yōu)化 一、選擇題 1.概念模型是現(xiàn)實(shí)世界的第一層抽象,這一類最著名的模型是( ) 。 A.層次模型 B. 關(guān)系模型 C. 網(wǎng)狀模型 D. 實(shí)體-關(guān)系模型 2.區(qū)分不同實(shí)體的依據(jù)是( ) 。 A. 名稱 B. 屬性 C. 對象 D. 概念 3.關(guān)系數(shù)據(jù)模型是目前最重要的一種數(shù)據(jù)模型,它的三個要素分別為( )。 A.實(shí)體完整、參照完整、用戶自定義完整
64、 B.數(shù)據(jù)結(jié)構(gòu)、關(guān)系操作、完整性約束 C.數(shù)據(jù)增加、數(shù)據(jù)修改、數(shù)據(jù)查詢 D.外模式、模式、內(nèi)模式 4.在( )中一個結(jié)點(diǎn)可以有多個雙親,節(jié)點(diǎn)之間可以有多種聯(lián)系。 A.網(wǎng)狀模型 B. 關(guān)系模型 C.層次模型 D. 以上都有 5.( )的存取路徑對用戶透明,從而具有更高的數(shù)據(jù)獨(dú)立性、更好的安全保密性, 也簡化了程序員的工作和數(shù)據(jù)庫開發(fā)建立的工作。 A.網(wǎng)狀模型 B. 關(guān)系模型 D.層次模型 D. 以上都有 6.在關(guān)系數(shù)據(jù)庫中,要求基本關(guān)系中所有的主屬性上不能有空值,其遵守的約束規(guī)則是( ) 。 A.數(shù)據(jù)
65、依賴完整性規(guī)則 B. 用戶定義完整性規(guī)則 C.實(shí)體完整性規(guī)則 D. 域完整性規(guī)則 選擇題答案: (1) D (2) B (3) B (4) A (5) B (6) C 二、簡答題 1.試述關(guān)系模型的三個組成部分。 答:關(guān)系模型由關(guān)系數(shù)據(jù)結(jié)構(gòu)、關(guān)系操作集合和關(guān)系完整性約束三部分組成。 2.試述關(guān)系數(shù)據(jù)語言的特點(diǎn)和分類。 答:關(guān)系數(shù)據(jù)語言可以分為三類: 關(guān)系代數(shù)語言 例如ISBL 關(guān)系演算語言 (元組關(guān)系演算語言 例如APLHA,QUEL 和 域關(guān)系演算語言 例如QBE) 具有關(guān)系代數(shù)和關(guān)系演算
66、雙重特點(diǎn)的語言 例如SQL 這些關(guān)系數(shù)據(jù)語言的共同特點(diǎn)是,具有完備的表達(dá)能力,是非過程化的集合操作語言,功能強(qiáng),能夠嵌入高級語言中使用。 3. 定義并理解下列術(shù)語,說明它們之間的聯(lián)系與區(qū)別: ?。?)域,關(guān)系,元組,屬性 答: 域:域是一組具有相同數(shù)據(jù)類型的值的集合。 關(guān)系:在域D1,D2,…,Dn上笛卡爾積D1D2…Dn的子集稱為關(guān)系,表示為 R(D1,D2,…,Dn) 元組:關(guān)系中的每個元素是關(guān)系中的元組。 屬性:關(guān)系也是一個二維表,表的每行對應(yīng)一個元組,表的每列對應(yīng)一個域。由于域可 以相同,為了加以區(qū)分,必須對每列起一個名字,稱為屬性(Attribute)。 ?。?)主碼,候選碼,外部碼 答: 候選碼:若關(guān)系中的某一屬性組的值能唯一地標(biāo)識一個元組,則稱該屬性組為候選碼(Candidate key)。 主碼:若一個關(guān)系有多個候選碼,則選定其中一個為主碼(Primary key)。 外部碼
- 溫馨提示:
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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 110中國人民警察節(jié)(筑牢忠誠警魂感受別樣警彩)
- 2025正字當(dāng)頭廉字入心爭當(dāng)公安隊(duì)伍鐵軍
- XX國企干部警示教育片觀后感筑牢信仰之基堅守廉潔底線
- 2025做擔(dān)當(dāng)時代大任的中國青年P(guān)PT青年思想教育微黨課
- 2025新年工作部署會圍繞六個干字提要求
- XX地區(qū)中小學(xué)期末考試經(jīng)驗(yàn)總結(jié)(認(rèn)真復(fù)習(xí)輕松應(yīng)考)
- 支部書記上黨課筑牢清廉信念為高質(zhì)量發(fā)展?fàn)I造風(fēng)清氣正的環(huán)境
- 冬季消防安全知識培訓(xùn)冬季用電防火安全
- 2025加強(qiáng)政治引領(lǐng)(政治引領(lǐng)是現(xiàn)代政黨的重要功能)
- 主播直播培訓(xùn)直播技巧與方法
- 2025六廉六進(jìn)持續(xù)涵養(yǎng)良好政治生態(tài)
- 員工職業(yè)生涯規(guī)劃方案制定個人職業(yè)生涯規(guī)劃
- 2024年XX地區(qū)黨建引領(lǐng)鄉(xiāng)村振興工作總結(jié)
- XX中小學(xué)期末考試經(jīng)驗(yàn)總結(jié)(認(rèn)真復(fù)習(xí)輕松應(yīng)考)
- 幼兒園期末家長會長長的路慢慢地走