數(shù)據(jù)庫(kù)系統(tǒng)概論復(fù)習(xí)資料: 第一章: 一、選擇題: 1.在數(shù)據(jù)管理技術(shù)的發(fā)展過(guò)程中,經(jīng)歷了人工管理階段、文件系統(tǒng)階段和數(shù)據(jù)庫(kù)系統(tǒng)階段。在這幾個(gè)階段中,數(shù)據(jù)獨(dú)立性最高的是 A 階段。 A.?dāng)?shù)據(jù)庫(kù)系統(tǒng) B.文件系統(tǒng) C.人工管理 D.?dāng)?shù)據(jù)項(xiàng)管理 2.?dāng)?shù)據(jù)庫(kù)的概念模型獨(dú)立于 A 。 A.具體的機(jī)器和DBMS B.E-R圖 C.信息世界 D.現(xiàn)實(shí)世界 3.?dāng)?shù)據(jù)庫(kù)的基本特點(diǎn)是 B 。 A.(1)數(shù)據(jù)可以共享(或數(shù)據(jù)結(jié)構(gòu)化) (2)數(shù)據(jù)獨(dú)立性(3)數(shù)據(jù)冗余大,易移植 (4)統(tǒng)一管理和控制 B.(1)數(shù)據(jù)可以共享(或數(shù)據(jù)結(jié)構(gòu)化) (2)數(shù)據(jù)獨(dú)立性(3)數(shù)據(jù)冗余小,易擴(kuò)充 (4)統(tǒng)一管理和控制 C.(1)數(shù)據(jù)可以共享(或數(shù)據(jù)結(jié)構(gòu)化) (2)數(shù)據(jù)互換性(3)數(shù)據(jù)冗余小,易擴(kuò)充 (4)統(tǒng)一管理和控制 D.(1)數(shù)據(jù)非結(jié)構(gòu)化 (2)數(shù)據(jù)獨(dú)立性 (3)數(shù)據(jù)冗余小,易擴(kuò)充 (4)統(tǒng)一管理和控制 4. B 是存儲(chǔ)在計(jì)算機(jī)內(nèi)有結(jié)構(gòu)的數(shù)據(jù)的集合。 A.?dāng)?shù)據(jù)庫(kù)系統(tǒng) B.?dāng)?shù)據(jù)庫(kù) C.?dāng)?shù)據(jù)庫(kù)管理系統(tǒng) D.?dāng)?shù)據(jù)結(jié)構(gòu) 5.?dāng)?shù)據(jù)庫(kù)中存儲(chǔ)的是 C 。 A.?dāng)?shù)據(jù) B.?dāng)?shù)據(jù)模型 C.?dāng)?shù)據(jù)以及數(shù)據(jù)之間的聯(lián)系 D.信息 6. 數(shù)據(jù)庫(kù)中,數(shù)據(jù)的物理獨(dú)立性是指 C 。 A.?dāng)?shù)據(jù)庫(kù)與數(shù)據(jù)庫(kù)管理系統(tǒng)的相互獨(dú)立 B.用戶(hù)程序與DBMS的相互獨(dú)立 C.用戶(hù)的應(yīng)用程序與存儲(chǔ)在磁盤(pán)上數(shù)據(jù)庫(kù)中的數(shù)據(jù)是相互獨(dú)立的 D.應(yīng)用程序與數(shù)據(jù)庫(kù)中數(shù)據(jù)的邏輯結(jié)構(gòu)相互獨(dú)立 7. 數(shù)據(jù)庫(kù)的特點(diǎn)之一是數(shù)據(jù)的共享,嚴(yán)格地講,這里的數(shù)據(jù)共享是指 。 A.同一個(gè)應(yīng)用中的多個(gè)程序共享一個(gè)數(shù)據(jù)集合B.多個(gè)用戶(hù)、同一種語(yǔ)言共享數(shù)據(jù) C.多個(gè)用戶(hù)共享一個(gè)數(shù)據(jù)文件 D.多種應(yīng)用、多種語(yǔ)言、多個(gè)用戶(hù)相互覆蓋地使用數(shù)據(jù)集合 8.數(shù)據(jù)庫(kù)系統(tǒng)的核心是 B 。 A.?dāng)?shù)據(jù)庫(kù) B.?dāng)?shù)據(jù)庫(kù)管理系統(tǒng) C.?dāng)?shù)據(jù)模型 D.軟件工具 9. 下述關(guān)于數(shù)據(jù)庫(kù)系統(tǒng)的正確敘述是 A 。 A.?dāng)?shù)據(jù)庫(kù)系統(tǒng)減少了數(shù)據(jù)冗余 B.?dāng)?shù)據(jù)庫(kù)系統(tǒng)避免了一切冗余 C.?dāng)?shù)據(jù)庫(kù)系統(tǒng)中數(shù)據(jù)的一致性是指數(shù)據(jù)類(lèi)型一致 D.?dāng)?shù)據(jù)庫(kù)系統(tǒng)比文件系統(tǒng)能管理更多的數(shù)據(jù) 10. 數(shù)將數(shù)據(jù)庫(kù)的結(jié)構(gòu)劃分成多個(gè)層次,是為了提高數(shù)據(jù)庫(kù)的 ① 和 ② C。 ①A.?dāng)?shù)據(jù)獨(dú)立性 B.邏輯獨(dú)立性 C.管理規(guī)范性 D.?dāng)?shù)據(jù)的共享 ②A.?dāng)?shù)據(jù)獨(dú)立性 B.物理獨(dú)立性 C.邏輯獨(dú)立性 D.管理規(guī)范性 11. 數(shù)據(jù)庫(kù)(DB)、數(shù)據(jù)庫(kù)系統(tǒng)(DBS)和數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)三者之間的關(guān)系是 A 。 A.DBS包括DB和DBMS B.DDMS包括DB和DBS C.DB包括DBS和DBMS D.DBS就是DB,也就是DBMS 12. 在數(shù)據(jù)庫(kù)中,產(chǎn)生數(shù)據(jù)不一致的根本原因是 C 。 A.?dāng)?shù)據(jù)存儲(chǔ)量太大 B.沒(méi)有嚴(yán)格保護(hù)數(shù)據(jù) C.未對(duì)數(shù)據(jù)進(jìn)行完整性控制 D.?dāng)?shù)據(jù)冗余 13. 數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)是 D 。 A.?dāng)?shù)學(xué)軟件 B.應(yīng)用軟件 C.計(jì)算機(jī)輔助設(shè)計(jì) D.系統(tǒng)軟件 14. 數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)的主要功能是 B 。 A.修改數(shù)據(jù)庫(kù) B.定義數(shù)據(jù)庫(kù) C.應(yīng)用數(shù)據(jù)庫(kù) D.保護(hù)數(shù)據(jù)庫(kù) 15. 數(shù)據(jù)庫(kù)系統(tǒng)的特點(diǎn)是 A 、數(shù)據(jù)獨(dú)立、減少數(shù)據(jù)冗余、避免數(shù)據(jù)不一致和加強(qiáng)了數(shù)據(jù)保護(hù)。 A.?dāng)?shù)據(jù)共享 B.?dāng)?shù)據(jù)存儲(chǔ) C.?dāng)?shù)據(jù)應(yīng)用 D.?dāng)?shù)據(jù)保密 16數(shù)據(jù)庫(kù)系統(tǒng)的最大特點(diǎn)是 B 。 A.?dāng)?shù)據(jù)的三級(jí)抽象和二級(jí)獨(dú)立性 B.?dāng)?shù)據(jù)共享性 C.?dāng)?shù)據(jù)的結(jié)構(gòu)化 D.?dāng)?shù)據(jù)獨(dú)立性 17. 數(shù)據(jù)庫(kù)管理系統(tǒng)能實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)中數(shù)據(jù)的查詢(xún)、插入、修改和刪除等操作,這種功能稱(chēng)為 C 。 A.?dāng)?shù)據(jù)定義功能 B.?dāng)?shù)據(jù)管理功能 C.?dāng)?shù)據(jù)操縱功能 D.?dāng)?shù)據(jù)控制功能 18. 數(shù)據(jù)庫(kù)管理系統(tǒng)是 B 。 A.操作系統(tǒng)的一部分 B.在操作系統(tǒng)支持下的系統(tǒng)軟件 C.一種編譯程序 D.一種操作系統(tǒng) 19.數(shù)據(jù)庫(kù)的三級(jí)模式結(jié)構(gòu)中,描述數(shù)據(jù)庫(kù)中全體數(shù)據(jù)的全局邏輯結(jié)構(gòu)和特征的是(D) A.外模式 B.內(nèi)模式 C.存儲(chǔ)模式 D.模式 20數(shù)據(jù)庫(kù)系統(tǒng)的數(shù)據(jù)獨(dú)立性是指 B 。 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) 21.信息世界中的術(shù)語(yǔ),與之對(duì)應(yīng)的數(shù)據(jù)庫(kù)術(shù)語(yǔ)為 B 。 A.文件 B.?dāng)?shù)據(jù)庫(kù) C.字段 D.記錄 22次型、網(wǎng)狀型和關(guān)系型數(shù)據(jù)庫(kù)劃分原則是 D 。 A.記錄長(zhǎng)度 B.文件的大小 C.聯(lián)系的復(fù)雜程度 D.?dāng)?shù)據(jù)之間的聯(lián)系 23.傳統(tǒng)的數(shù)據(jù)模型分類(lèi),數(shù)據(jù)庫(kù)系統(tǒng)可以分為三種類(lèi)型 C 。 A.大型、中型和小型 B.西文、中文和兼容 C.層次、網(wǎng)狀和關(guān)系 D.?dāng)?shù)據(jù)、圖形和多媒體 24. 層次模型不能直接表示 C 。 A. 1 :1關(guān)系 B.1 :m關(guān)系 C. m :n關(guān)系 D.1 :1和1 :m關(guān)系 25. 數(shù)據(jù)庫(kù)技術(shù)的奠基人之一E.F.Codd從1970年起發(fā)表過(guò)多篇論文,主要論述的是 C 。 A.層次數(shù)據(jù)模型 B.網(wǎng)狀數(shù)據(jù)模型 C.關(guān)系數(shù)據(jù)模型 D.面向?qū)ο髷?shù)據(jù)模型 二、填空題 1. 數(shù)據(jù)管理技術(shù)經(jīng)歷了 人工管理階段 、 文件系統(tǒng)階段 和 數(shù)據(jù)庫(kù)系統(tǒng)階段 三個(gè)階段。 2. 數(shù)據(jù)庫(kù)是長(zhǎng)期存儲(chǔ)在計(jì)算機(jī)內(nèi)、有 組織 的、可 共享 的數(shù)據(jù)集合。 3.DBMS是指 它是位于 和 之間的一層管理軟件。 4. 數(shù)據(jù)庫(kù)管理系統(tǒng)的主要功能有 數(shù)據(jù)庫(kù)定義功能 、 、數(shù)據(jù)庫(kù)的運(yùn)行管理和數(shù)據(jù)庫(kù)的建立以及維護(hù)等4個(gè)方面。 5. 數(shù)據(jù)獨(dú)立性又可分為 物理獨(dú)立性 和 邏輯獨(dú)立 。 6. 當(dāng)數(shù)據(jù)的物理存儲(chǔ)改變了,應(yīng)用程序不變,而由DBMS處理這種改變,這是指數(shù)據(jù)的 物理獨(dú)立性 。 7. 數(shù)據(jù)模型是由 數(shù)據(jù)結(jié)構(gòu) 、 數(shù)據(jù)操作 和 數(shù)據(jù)的完整性約束條件三部分組成的。 8. 數(shù)據(jù)結(jié)構(gòu) 是對(duì)數(shù)據(jù)系統(tǒng)的靜態(tài)特性的描述, 數(shù)據(jù)操作是對(duì)數(shù)據(jù)庫(kù)系統(tǒng)的動(dòng)態(tài)特性的描述。 9. 數(shù)據(jù)庫(kù)體系結(jié)構(gòu)按照 外模式 、 模式 和 內(nèi)模式三級(jí)結(jié)構(gòu)進(jìn)行組織。 10. 實(shí)體之間的聯(lián)系可抽象為三類(lèi),它們是 一對(duì)一 、 一對(duì)多和 多對(duì)多 。 11.?dāng)?shù)據(jù)冗余可能導(dǎo)致的問(wèn)題有 查詢(xún)效率低 和 占用過(guò)多資源 。 三:簡(jiǎn)答題: 1. 什么是數(shù)據(jù)庫(kù)? P4 2. 什么是數(shù)據(jù)庫(kù)的數(shù)據(jù)獨(dú)立性? P13 3. 什么是數(shù)據(jù)庫(kù)管理系統(tǒng)? P5 4. 什么是數(shù)據(jù)字典?數(shù)據(jù)字典包含哪些基本內(nèi)容? 第一章補(bǔ)充作業(yè)部分: 一、假設(shè)教學(xué)管理規(guī)定: ①一個(gè)學(xué)生可選修多門(mén)課,一門(mén)課有若干學(xué)生選修; ②一個(gè)教師可講授多門(mén)課,一門(mén)課只有一個(gè)教師講授; ③一個(gè)學(xué)生選修一門(mén)課,僅有一個(gè)成績(jī)。 學(xué)生的屬性有學(xué)號(hào)、學(xué)生姓名;教師的屬性有教師編號(hào),教師姓名;課程的屬性有課程號(hào)、課程名。 要求:根據(jù)上述語(yǔ)義畫(huà)出ER圖,要求在圖中畫(huà)出實(shí)體的屬性并注明聯(lián)系的類(lèi)型;
二、某企業(yè)集團(tuán)有若干工廠,每個(gè)工廠生產(chǎn)多種產(chǎn)品,且每一種產(chǎn)品可以在多個(gè)工廠生產(chǎn),每個(gè)工廠按照固定的計(jì)劃數(shù)量生產(chǎn)產(chǎn)品;每個(gè)工廠聘用多名職工,且每名職工只能在一個(gè)工廠工作,工廠聘用職工有聘期和工資。工廠的屬性有工廠編號(hào)、廠名、地址,產(chǎn)品的屬性有產(chǎn)品編號(hào)、產(chǎn)品名、規(guī)格,職工的屬性有職工號(hào)、姓名。 (1)根據(jù)上述語(yǔ)義畫(huà)出E-R圖; (2)將該E-R模型轉(zhuǎn)換為關(guān)系模型; (要求:1:1和1:n的聯(lián)系進(jìn)行合并) (3)指出轉(zhuǎn)換結(jié)果中每個(gè)關(guān)系模式的主碼和外碼。 答案: (1)本題的E-R圖如下圖所示。
(2)轉(zhuǎn)化后的關(guān)系模式如下: 工廠(工廠編號(hào),廠名,地址) 產(chǎn)品(產(chǎn)品編號(hào),產(chǎn)品名,規(guī)格) 職工(職工號(hào),姓名,工廠編號(hào),聘期,工資) 生產(chǎn)(工廠編號(hào),產(chǎn)品編號(hào),計(jì)劃數(shù)量) (3)每個(gè)關(guān)系模式的主碼、外碼如下: 工廠:主碼是工廠編號(hào),無(wú)外碼; 產(chǎn)品:主碼是產(chǎn)品編號(hào),無(wú)外碼; 職工:主碼職工號(hào),外碼是工廠編號(hào); 生產(chǎn):主碼是(工廠編號(hào),產(chǎn)品編號(hào)), 外碼是工廠編號(hào)、產(chǎn)品編號(hào)。 一、選擇題 1、關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)應(yīng)能實(shí)現(xiàn)的專(zhuān)門(mén)關(guān)系運(yùn)算包括 B 。 A.排序、索引、統(tǒng)計(jì) B.選擇、投影、連接 C.關(guān)聯(lián)、更新、排序 D.顯示、打印、制表 2、關(guān)系模型中,一個(gè)關(guān)鍵字是 C 。 A.可由多個(gè)任意屬性組成 B.至多由一個(gè)屬性組成 C.可由一個(gè)或多個(gè)其值能惟一標(biāo)識(shí)該關(guān)系模式中任何元組的屬性組成 D.以上都不是 3、自然連接是構(gòu)成新關(guān)系的有效方法。一般情況下,當(dāng)對(duì)關(guān)系R和S使用自然連接時(shí),要求R和S含有一個(gè)或多個(gè)共有的D 。 A.元組 B.行 C.記錄 D.屬性 4、關(guān)系運(yùn)算中花費(fèi)時(shí)間可能最長(zhǎng)的運(yùn)算是 C 。 A.投影 B.選擇 C.笛卡爾積 D.除 5.關(guān)系模式的任何屬性 A 。 A.不可再分 B.可再分 C.命名在該關(guān)系模式中可以不惟一 D.以上都不是 6.在關(guān)系代數(shù)運(yùn)算中,五種基本運(yùn)算為 C 。 A.并、差、選擇、投影、自然連接 B.并、差、交、選擇、投影 C.并、差、選擇、投影、笛卡爾積 D.并、差、交、選擇、乘積 7、如圖所示,兩個(gè)關(guān)系R1和R2,它們進(jìn)行 D 運(yùn)算后得到R3。 R2
R1
R3
A.交 B.并 C.笛卡爾積 D.連接 二、填空題 1、一個(gè)關(guān)系模式的定義格式為:關(guān)系名(屬性名1,屬性名2,…,屬性名n) 2、.一個(gè)關(guān)系模式的定義主要包括 關(guān)系名 、屬性名 、屬性類(lèi)型 、屬性長(zhǎng)度 和關(guān)鍵字 。 【答案:】①關(guān)系名 ②屬性名 ③屬性類(lèi)型 ④屬性長(zhǎng)度 ⑤關(guān)鍵字 3、.關(guān)系代數(shù)運(yùn)算中,傳統(tǒng)的集合運(yùn)算有 笛卡爾積 、 并 、 交 和 差 。 4、關(guān)系代數(shù)運(yùn)算中,基本的運(yùn)算是 并 、 差 、 笛卡爾積 、 投影 和 選擇 。 5、關(guān)系代數(shù)運(yùn)算中,專(zhuān)門(mén)的關(guān)系運(yùn)算有 選擇 、 投影 和 連接 。 6、關(guān)系數(shù)據(jù)庫(kù)中基于數(shù)學(xué)上兩類(lèi)運(yùn)算是關(guān)系代數(shù) 和關(guān)系演算 。 7、.已知系(系編號(hào),系名稱(chēng),系主任,電話(huà),地點(diǎn))和學(xué)生(學(xué)號(hào),姓名,性別,入學(xué)日期,專(zhuān)業(yè),系編號(hào))兩個(gè)關(guān)系,系關(guān)系的主關(guān)鍵字是 系編號(hào) ,系關(guān)系的外關(guān)鍵字 無(wú) ,學(xué)生關(guān)系的主關(guān)鍵字是 學(xué)號(hào),外關(guān)鍵字 系編號(hào) 第3章關(guān)系數(shù)據(jù)庫(kù)標(biāo)準(zhǔn)語(yǔ)言SQL 一、選擇題 1、SQL語(yǔ)言是 B 的語(yǔ)言,易學(xué)習(xí)。 A.過(guò)程化 B.非過(guò)程化 C.格式化 D.導(dǎo)航式 2、SQL語(yǔ)言是 C 語(yǔ)言。 A.層次數(shù)據(jù)庫(kù) B.網(wǎng)絡(luò)數(shù)據(jù)庫(kù) C.關(guān)系數(shù)據(jù)庫(kù) D.非數(shù)據(jù)庫(kù) 3、SQL語(yǔ)言具有 B 的功能。 A.關(guān)系規(guī)范化、數(shù)據(jù)操縱、數(shù)據(jù)控制 B.?dāng)?shù)據(jù)定義、數(shù)據(jù)操縱、數(shù)據(jù)控制 C.?dāng)?shù)據(jù)定義、關(guān)系規(guī)范化、數(shù)據(jù)控制 D.?dāng)?shù)據(jù)定義、關(guān)系規(guī)范化、數(shù)據(jù)操縱 4、SQL語(yǔ)言具有兩種使用方式,分別稱(chēng)為交互式SQL和 C 。 A.提示式SQL B.多用戶(hù)SQL C.嵌入式SQL D.解釋式SQL 5、假定學(xué)生關(guān)系是S(S#,SNAME,SEX,AGE),課程關(guān)系是C(C#,CNAME,TEACHER),學(xué)生選課關(guān)系是SC(S#,C#,GRADE)。 要查找選修“COMPUTER”課程的“女”學(xué)生姓名,將涉及到關(guān)系 D 。 A.S B.SC,C C.S,SC D.S,C,SC 6、如下面的數(shù)據(jù)庫(kù)的表中,若職工表的主關(guān)鍵字是職工號(hào),部門(mén)表的主關(guān)鍵字是部門(mén)號(hào),SQL操作 B 不能執(zhí)行。 A.從職工表中刪除行(‘025’,‘王芳’,‘03’,720) B.將行(‘005,’,‘喬興’,‘04’,750)插入到職工表中 C.將職工號(hào)為,‘001’的工資改為700 D.將職工號(hào)為,’038’的部門(mén)號(hào)改為‘03’ 7、若用如下的SQL語(yǔ)句創(chuàng)建一個(gè)student表: CREATE TABLE student(NO C(4) NOT NULL, NAME C(8) NOT NULL, SEX C(2), AGE N(2)) 可以插入到student表中的是 B 。 A.(‘1031’,‘曾華’,男,23) B.(‘1031’,‘曾華’,NULL,NULL) C.(NULL,‘曾華’,‘男’,‘23’) D.(‘1031’,NULL,‘男’,23) 第8到第11題基于這樣的三個(gè)表即學(xué)生表S、課程表C和學(xué)生選課表SC,它們的結(jié)構(gòu)如下: S(S#,SN,SEX,AGE,DEPT) C(C#,CN) SC(S#,C#,GRADE) 其中:S#為學(xué)號(hào),SN為姓名,SEX為性別,AGE為年齡,DEPT為系別,C#為課程號(hào),CN為課程名,GRADE為成績(jī)。 8、檢索所有比“王華”年齡大的學(xué)生姓名、年齡和性別。正確的SELECT語(yǔ)句是 A A.SELECT SN,AGE,SEX FROM S WHERE AGE>(SELECT AGE FROM S WHERE SN=“王華”) B.SELECT SN,AGE,SEX FROM S WHERE SN=“王華” C.SELECT SN,AGE,SEX FROM S WHERE AGE>(SELECT AGE WHERE SN=“王華”) D.SELECT SN,AGE,SEX FROM S WHERE AGE>王華.AGE 9、檢索選修課程“C2”的學(xué)生中成績(jī)最高的學(xué)生的學(xué)號(hào),正確的SELECT語(yǔ)句是 D 。 A.SELECT S# FORM SC WHERE C#=“C2” AND GRAD>= (SELECT GRADE FORM SC WHERE C#=“C2”) B.SELECT S# FORM SC WHERE C#=“C2” AND GRADE IN (SELECT GRADE FORM SC WHERE C#=“C2”) C.SELECT S# FORM SC WHERE C#=“C2” AND GRADE NOT IN (SELECT GRADE FORM SC WHERE C#=“C2”) D.SELECT S# FORM SC WHERE C#=“C2” AND GRADE>=ALL (SELECT GRADE FORM SC WHERE C#=“C2”) 10、檢索學(xué)生姓名及其所選修課程的課程號(hào)和成績(jī)。正確的SELECT語(yǔ)句是 C 。 A.SELECT S.SN,SC.C#,SC.GRADE FROM S WHERE S.S#=SC.S# B.SELECT S.SN,SC.C#,SC.GRADE FROM SC WHERE S.S#=SC.GRADE C.SELECT S.SN,SC.C#,SC.GRADE FROM S,SC WHERE S.S#=SC.S# D.SELECT S.SN,SC.C#,SC.GRADE FROM S.SC 11、檢索選修四門(mén)以上課程的學(xué)生總成績(jī)(不統(tǒng)計(jì)不及格的課程),并要求按總成績(jī)的降序排列出來(lái)。 正確的SELECT語(yǔ)句是D 。 A.SELECT S#,SUM(GRADE)FROM SC WHERE GRADE>=60 GROUP BY S# ORDER BY 2 DESC HAVING COUNT(*)>=4 WHERE C#=“C2” AND GRADE>= (SELECT GRADE FORM SC WHERE C#=“C2”) B.SELECT S# FORM SC WHERE C#=“C2” AND GRADE IN (SELECT GRADE FORM SC WHERE C#=“C2”) C.SELECT S# FORM SC WHERE C#=“C2” AND GRADE NOT IN (SELECT GRADE FORM SC WHERE C#=“C2”) D.SELECT S# FORM SC WHERE C#=“C2” AND GRADE>=ALL (SELECT GRADE FORM SC WHERE C#=“C2”) 二、填空題 1、SQL是 結(jié)構(gòu)化查詢(xún)語(yǔ)言 結(jié)構(gòu)化查詢(xún)語(yǔ)言 。 【答案:】結(jié)構(gòu)化查詢(xún)語(yǔ)言 2、視圖是一個(gè)虛表,它是從 ①一個(gè)或幾個(gè)基本表 中導(dǎo)出的表。在數(shù)據(jù)庫(kù)中,只存放視圖的②定義 ,不存放視圖的 ③視圖對(duì)應(yīng)的數(shù)據(jù) 。 3、設(shè)有如下關(guān)系表R: R(No,NAME,SEX,AGE,CLASS) 主關(guān)鍵字是NO 其中NO為學(xué)號(hào),NAME為姓名,SEX為性別,AGE為年齡,CLASS為班號(hào)。 寫(xiě)出實(shí)現(xiàn)下列功能的SQL語(yǔ)句。 ①插入一個(gè)記錄(25,“李明”,“男”,21,“95031”); 。 ②插入“95031”班學(xué)號(hào)為30、姓名為“鄭和”的學(xué)生記錄; 。 ③將學(xué)號(hào)為10的學(xué)生姓名改為“王華”; 。 ④將所有“95101”班號(hào)改為“95091”; 。 ⑤刪除學(xué)號(hào)為20的學(xué)生記錄; 。 ⑥刪除姓“王”的學(xué)生記錄; 。 【答案:】 ①I(mǎi)NSERT INTO R VALUES(25,“李明”,“男”,21,“95031”) ②INSERT INTO R(NO,NAME,CLASS) VALUES(30,“鄭和”,“95031”) ③UPDATE R SET NAME=“王華”WHERE NO=10 ④UPDATE R SET CLASS=“95091”WHERE CLASS=“95101” ⑤DELETE FROM R WHERE NO=20 ⑥D(zhuǎn)ELETE FROMR WHERE NAME LIKE“王%” 第3章書(shū)面作業(yè) 1、設(shè)學(xué)生課程數(shù)據(jù)庫(kù)中有三個(gè)關(guān)系: 學(xué)生關(guān)系S(S#,SNAME,AGE,SEX) 學(xué)習(xí)關(guān)系SC(S#,C#,GRADE) 課程關(guān)系C(C#,CNAME) 其中S#、C#、SNAME、AGE、SEX、GRADE、CNAME分別表示學(xué)號(hào)、課程號(hào)、姓名、年齡、性別、成績(jī)和課程名。 用SQL語(yǔ)句表達(dá)下列操作 (1)檢索選修課程名稱(chēng)為“MATHS”的學(xué)生的學(xué)號(hào)與姓名 (2)檢索至少學(xué)習(xí)了課程號(hào)為“C1”和“C2”的學(xué)生的學(xué)號(hào) (3)檢索年齡在18到20之間(含18和20)的女生的學(xué)號(hào)、姓名和年齡 (4)檢索平均成績(jī)超過(guò)80分的學(xué)生學(xué)號(hào)和平均成績(jī) (5)檢索選修了全部課程的學(xué)生姓名 (6)檢索選修了三門(mén)課以上的學(xué)生的姓名 【答案:】(1)SELECT SNAME,AGE FROM S,SC,C WHERE S.S#=SC.S# AND C.C#=SC.C# AND CNAME=’MATHS’ (2) SELECT S# FROM SC WHERE CNO=’C1’ AND S# IN( SELECT S# FROM SC WHERE CNO=’C2’) (3)SELECT S#,SNAME,AGE FROM S WHERE AGE BETWEEN 18 AND 20 (4) SELECT S# ,AVG(GRADE) ‘平均成績(jī)’ FROM SC GROUP BY S# HAVING AVG(GRADE)>80 (5) SELECT SNAME FROM S WHERE NOT EXISTS (SELECT * FROM C WHERE NOT EXISTS (SELECT * FROM SC WHERE S#=S.S# AND C#=C.C# ) ) (6) SELECT SNAME FROM S,SC WHERE S.S#=SC.S# GROUP BY SNAME HAVING COUNT(*)>3 2、設(shè)學(xué)生-課程數(shù)據(jù)庫(kù)中包括三個(gè)表: 學(xué)生表:Student (Sno,Sname,Sex,Sage,Sdept) 課程表:Course(Cno,Cname,Ccredit) 學(xué)生選課表:SC(Sno,Cno,Grade) 其中Sno、Sname、Sex、Sage、Sdept、 Cno、Cname、Ccredit 、Grade分別表示學(xué)號(hào)、姓名、性別、年齡、所在系名、課程號(hào)、課程名、學(xué)分和成績(jī)。 試用SQL語(yǔ)言完成下列項(xiàng)操作: (1)查詢(xún)選修課程包括“1042”號(hào)學(xué)生所學(xué)的課程的學(xué)生學(xué)號(hào) (2)創(chuàng)建一個(gè)計(jì)科系學(xué)生信息視圖S_CS_VIEW,包括Sno學(xué)號(hào)、Sname姓名、Sex性別; (3)通過(guò)上面第2題創(chuàng)建的視圖修改數(shù)據(jù),把王平的名字改為王慧平 (4)創(chuàng)建一選修數(shù)據(jù)庫(kù)課程信息的視圖,視圖名稱(chēng)為datascore_view,包含學(xué)號(hào)、姓名、成績(jī)。 【答案:】(1) SELECT DISTINCT SNO FROM SC SCX WHERE NOT EXISTS (SELECT * FROM SC SCY WHERE SCY.SNO = ' 1042' AND NOT EXISTS (SELECT * FROM SC SCZ WHERE SCZ.SNO=SCX.SNO AND SCZ.CNO=SCY.CNO)); (2) CREATE VIEW S_CS_VIEW AS SELECT SNO,SNAME,SEX FROM STUDENT WHERE Sdept=’CS’ (3)UPDATE S_CS_VIEW SET SNAME=’ 王慧平’ WHERE SNAME=’ 王平’ (4) CREATE VIEW datascore_view AS SELECT SNO 學(xué)號(hào)、SNAME 姓名、GRADE 成績(jī) FROM STUDENT,SC,COURSE WHERE STUDENT.SNO=SC.SNO AND COURSE.CNO=SC.CNO AND CNAME=’ 數(shù)據(jù)庫(kù)’ 第4章數(shù)據(jù)庫(kù)的安全性 一、選擇題 1、下面哪個(gè)不是數(shù)據(jù)庫(kù)系統(tǒng)必須提供的數(shù)據(jù)控制功能B 。 A.安全性 B.可移植性 C.完整性 D.并發(fā)控制 2、保護(hù)數(shù)據(jù)庫(kù),防止未經(jīng)授權(quán)的或不合法的使用造成的數(shù)據(jù)泄漏、更改破壞。這是指數(shù)據(jù)的A 。 A.安全性 B.完整性 C.并發(fā)控制 D.恢復(fù) 3、數(shù)據(jù)庫(kù)的 完整性 B 是指數(shù)據(jù)的正確性和相容性。 A.安全性 B.完整性 C.并發(fā)控制 D.恢復(fù) 4、在數(shù)據(jù)系統(tǒng)中,對(duì)存取權(quán)限的定義稱(chēng)為 B 。 A.命令 B.授權(quán) C.定義 D.審計(jì) 5、數(shù)據(jù)庫(kù)管理系統(tǒng)通常提供授權(quán)功能來(lái)控制不同用戶(hù)訪問(wèn)數(shù)據(jù)的權(quán)限,這主要是為了實(shí)現(xiàn)數(shù)據(jù)庫(kù)的 D 。 A.可靠性 B.一致性 C.完整性 D.安全性 6、下列SQL語(yǔ)句中,能夠?qū)崿F(xiàn)“收回用戶(hù)ZHAO對(duì)學(xué)生表(STUD)中學(xué)號(hào)(XH)的修改權(quán)”這一功能的是 C A.REVOKE UPDATE(XH) ON TABLE FROM ZHAO B.REVOKE UPDATE(XH) ON TABLE FROM PUBLIC C.REVOKE UPDATE(XH) ON STUD FROM ZHAO D.REVOKE UPDATE(XH) ON STUD FROM PUBLIC 7、把對(duì)關(guān)系SC的屬性GRADE的修改權(quán)授予用戶(hù)ZHAO的SQL語(yǔ)句是 C A)GRANT GRADE ON SC TO ZHAO B)GRANT UPDATE ON SC TO ZHAO C)GRANT UPDATE (GRADE) ON SC TO ZHAO D)GRANT UPDATE ON SC (GRADE) TO ZHAO 8、在SQL Server 中刪除觸發(fā)器用( B?。?/span> A.ROLLBACK B. DROP C.DELALLOCATE D. DELETE 二、填空題 1、保護(hù)數(shù)據(jù)安全性的一般方法是 設(shè)置用戶(hù)標(biāo)識(shí)和存取權(quán)限控制 2、安全性控制的一般方法有①用戶(hù)標(biāo)識(shí)鑒定、②存取控制、③審計(jì)、④數(shù)據(jù)加密和視圖的保護(hù)五級(jí)安全措施。 3、存取權(quán)限包括兩方面的內(nèi)容,一個(gè)是 ①要存取的數(shù)據(jù)對(duì)象,另一個(gè)是 ②對(duì)此數(shù)據(jù)對(duì)象進(jìn)行操作的類(lèi)型。 4、在數(shù)據(jù)庫(kù)系統(tǒng)中對(duì)存取權(quán)限的定義稱(chēng)為授權(quán) 。 5、在SQL語(yǔ)言中,為了數(shù)據(jù)庫(kù)的安全性,設(shè)置了對(duì)數(shù)據(jù)的存取進(jìn)行控制的語(yǔ)句,對(duì)用戶(hù)授權(quán)使用①GRANT 語(yǔ)句,收回所授的權(quán)限使用 ②REVOKE 語(yǔ)句。 6、DBMS存取控制機(jī)制主要包括兩部分:自主存取控制,_強(qiáng)制存取控制 7、 當(dāng)對(duì)某一表進(jìn)行諸如( INSERT?。?( DELETE?。?( UPDATE?。?這些操作時(shí),SQL Server 就會(huì)自動(dòng)執(zhí)行觸發(fā)器所定義的SQL 語(yǔ)句。 第5章數(shù)據(jù)庫(kù)完整性 一、選擇題: 1、在數(shù)據(jù)庫(kù)系統(tǒng)中,保證數(shù)據(jù)及語(yǔ)義正確和有效的功能是 (D ) A.并發(fā)控制 B.存取控制 C.安全控制 D.完整性控制 2、關(guān)于主鍵約束以下說(shuō)法錯(cuò)誤的是( C?。?/span> A. 一個(gè)表中只能設(shè)置一個(gè)主鍵約束 B.允許空值的字段上不能定義主鍵約束 C.允許空值的字段上可以定義主鍵約束 D.、可以將包含多個(gè)字段的字段組合設(shè)置為主鍵 3、在表或視圖上執(zhí)行除了( D?。┮酝獾恼Z(yǔ)句都可以激活觸發(fā)器。 A.Insert B. Delete C. Update D. Create 4、數(shù)據(jù)庫(kù)的_B___是指數(shù)據(jù)的正確性和相容性。 A.安全性 B.完整性 C.并發(fā)控制 D.恢復(fù) 5、在數(shù)據(jù)庫(kù)的表定義中,限制成績(jī)屬性列的取值在0到100的范圍內(nèi),屬于數(shù)據(jù)的____C____約束。 A、實(shí)體完整性B、參照完整性C、用戶(hù)自定義D、用戶(hù)操作 二、填空題 1.?dāng)?shù)據(jù)庫(kù)的完整性是指數(shù)據(jù)的 ①實(shí)體完整性. ②參照完整性__和 ③用戶(hù)定義完整性 。 2、實(shí)體完整性是指在基本表中,【主屬性不能取空值】 3、參照完整性是指在基本表中, 外碼可以是空值或者另一個(gè)關(guān)系主碼的有效值 。 4、為了保護(hù)數(shù)據(jù)庫(kù)的實(shí)體完整性,當(dāng)用戶(hù)程序?qū)χ鞔a進(jìn)行更新使主碼值不惟一時(shí),DBMS就 拒絕此操作 。 第6章關(guān)系數(shù)據(jù)理論 一、選擇題 1、關(guān)系規(guī)范化中的刪除操作異常是指 ①A ,插入操作異常是指②D 。 A.不該刪除的數(shù)據(jù)被刪除 B.不該插入的數(shù)據(jù)被插入 C.應(yīng)該刪除的數(shù)據(jù)未被刪除 D.應(yīng)該插入的數(shù)據(jù)未被插入【答案:】①A ②D 2、設(shè)計(jì)性能較優(yōu)的關(guān)系模式稱(chēng)為規(guī)范化,規(guī)范化主要的理論依據(jù)是 A 。 A.關(guān)系規(guī)范化理論 B.關(guān)系運(yùn)算理論 C.關(guān)系代數(shù)理論 D.?dāng)?shù)理邏輯 3、規(guī)范化過(guò)程主要為克服數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)中的插入異常,刪除異常以及 C 的缺陷。 A.?dāng)?shù)據(jù)的不一致性 B.結(jié)構(gòu)不合理 C.冗余度大 D.?dāng)?shù)據(jù)丟失 4、當(dāng)關(guān)系模式R(A,B)已屬于3NF,下列說(shuō)法中 B 是正確的。 A.它一定消除了插入和刪除異常 B.仍存在一定的插入和刪除異常 C.一定屬于BCNF D.A和C都是 5、關(guān)系模型中的關(guān)系模式至少是 A 。 A.1NF B.2NF C.3NF D.BCNF 6、在關(guān)系DB中,任何二元關(guān)系模式的最高范式必定是D 。 A.1NF B.2NF C.3NF D.BCNF 7、在關(guān)系模式R中,若其函數(shù)依賴(lài)集中所有候選關(guān)鍵字都是決定因素,則R最高范式是 C 。 A.2NF B.3NF C.4NF D.BCNF 8、候選關(guān)鍵字中的屬性稱(chēng)為 B 。 A.非主屬性 B.主屬性 C.復(fù)合屬性 D.關(guān)鍵屬性 9、消除了部分函數(shù)依賴(lài)的1NF的關(guān)系模式,必定是 B 。 A.1NF B.2NF C.3NF D.4NF 10、關(guān)系模式的候選關(guān)鍵字可以有 ①C,主關(guān)鍵字有 ②B 。 A.0個(gè) B.1個(gè) C.1個(gè)或多個(gè) D.多個(gè) 11、關(guān)系模式的分解 B 。 A.惟一 B.不惟一 12、根據(jù)關(guān)系數(shù)據(jù)庫(kù)規(guī)范化理論,關(guān)系數(shù)據(jù)庫(kù)中的關(guān)系要滿(mǎn)足第一范式。下面“部門(mén)”關(guān)系中,因哪個(gè)屬性而使它不滿(mǎn)足第一范式? B 。 部門(mén)(部門(mén)號(hào),部門(mén)名,部門(mén)成員,部門(mén)總經(jīng)理) A.部門(mén)總經(jīng)理 B.部門(mén)成員 C.部門(mén)名 D.部門(mén)號(hào) 二、填空題 1、在關(guān)系A(chǔ)(S,SN,D)和B(D,CN,NM中,A的主鍵是S,B的主鍵是D,則D在S中稱(chēng)為 外部鍵 。 2、對(duì)于非規(guī)范化的模式,經(jīng)過(guò) ① 轉(zhuǎn)變?yōu)?NF,將1NF經(jīng)過(guò)② 轉(zhuǎn)變?yōu)?NF,將2NF經(jīng)過(guò) ③ 轉(zhuǎn)變?yōu)?NF。 【答案:】①使屬性域變?yōu)楹?jiǎn)單域 ②消除非主屬性對(duì)主關(guān)鍵字的部分依賴(lài)③消除非主屬性對(duì)主關(guān)鍵字的傳遞依賴(lài) 3、在關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論中,在執(zhí)行“分解”時(shí),必須遵守規(guī)范化原則:保持原有的依賴(lài)關(guān)系和無(wú)損連接性無(wú)損連接性 。 三、概念解釋?zhuān)?/span> 1、平凡的函數(shù)依賴(lài) 在關(guān)系模式R(U)中,對(duì)于U的子集X和Y, 如果X→Y,但Y í X,則稱(chēng)X→Y是非平凡的函數(shù)依賴(lài) 2、非平凡的函數(shù)依賴(lài) 在關(guān)系模式R(U)中,對(duì)于U的子集X和Y, 若X→Y,但Y í X, 則稱(chēng)X→Y是平凡的函數(shù)依賴(lài) 四、綜合練習(xí) 1、已知學(xué)生關(guān)系模式 S(Sno,Sname,SD,Sdname,Course,Grade) 其中:Sno學(xué)號(hào)、Sname姓名、SD系名、Sdname系主任名、Course課程、Grade成績(jī)。 (1)寫(xiě)出關(guān)系模式S的基本函數(shù)依賴(lài)和主碼。 (2)原關(guān)系模式S為幾范式?為什么?分解成高一級(jí)范式,并說(shuō)明為什么? (3)將關(guān)系模式分解成3NF,并說(shuō)明為什么? (1)寫(xiě)出關(guān)系模式S的基本函數(shù)依賴(lài)和主碼。 答: 關(guān)系模式S的基本函數(shù)依賴(lài)如下: Sno→Sname,SD→Sdname,Sno→SD,(Sno,Course) →Grade 關(guān)系模式S的碼為:(Sno,Course)。 (2)原關(guān)系模式S為幾范式?為什么?分解成高一級(jí)范式,并說(shuō)明為什么? 答: 原關(guān)系模式S是屬于1NF的,碼為(Sno,Course),非主屬性中的成績(jī)完全依賴(lài)于碼,而其它非主屬性對(duì)碼的函數(shù)依賴(lài)為部分函數(shù)依賴(lài),所以不屬于2NF。 消除非主屬性對(duì)碼的函數(shù)依賴(lài)為部分函數(shù)依賴(lài),將關(guān)系模式分解成2NF如下: S1(Sno,Sname,SD,Sdname) S2(Sno,Course,Grade) (3)將關(guān)系模式分解成3NF,并說(shuō)明為什么? 答: 將上述關(guān)系模式分解成3NF如下: 關(guān)系模式S1中存在Sno→SD,SD→Sdname,即非主屬性Sdname傳遞依賴(lài)于Sno,所以S1不是3NF。進(jìn)一步分解如下: S11(Sno,Sname,SD) S12(SD,Sdname) 分解后的關(guān)系模式S11、S12滿(mǎn)足3NF。 對(duì)關(guān)系模式S2不存在非主屬性對(duì)碼的傳遞依賴(lài),故屬于3NF。所以,原模式S(Sno,Sname,SD,Sdname,Course,Grade)按如下分解滿(mǎn)足3NF。 S11(Sno,Sname,SD) S12(SD,Sdname) S2(Sno,Course,Grade) 2、設(shè)有如下關(guān)系R (1)它為第幾范式? 為什么? (2)是否存在刪除操作異常?若存在,則說(shuō)明是在什么情況下發(fā)生的? (3)將它分解為高一級(jí)范式,分解后的關(guān)系是如何解決分解前可能存在的刪除操作異常問(wèn)題? (1)它為第幾范式? 為什么? 解:它是2NF。 因?yàn)镽的候選關(guān)鍵字為“課程名”。 依賴(lài)關(guān)系: 課程名→教師名,教師名 → 課程名,教師名→教師地址,所以 課程名→教師地址。即存在非主屬性“教師地址”對(duì)候選關(guān)鍵字課程名的傳遞函數(shù),因此R不是3NF。但:因?yàn)椴淮嬖诜侵鲗傩詫?duì)候選關(guān)鍵字的部分函數(shù)依賴(lài),所以R是2NF。 (2)是否存在刪除操作異常?若存在,則說(shuō)明是在什么情況下發(fā)生的?解: 存在。當(dāng)刪除某門(mén)課程時(shí)會(huì)刪除不該刪除的教師的有關(guān)信息。 (3)將它分解為高一級(jí)范式,分解后的關(guān)系是如何解決分解前可能存在的刪除操作異常問(wèn)題? 解: 分解為高一級(jí)范式如圖所示。 R1如下: R2如下: 分解后,若刪除課程數(shù)據(jù)時(shí),僅對(duì)關(guān)系R1操作,教師地址信息在關(guān)系R2中仍然保留,不會(huì)丟失教師方面的信息。 3、設(shè)某商業(yè)集團(tuán)數(shù)據(jù)庫(kù)中有一關(guān)系模式R如下: R (商店編號(hào),商品編號(hào),數(shù)量,部門(mén)編號(hào),負(fù)責(zé)人) 如果規(guī)定:(1) 每個(gè)商店的每種商品只的在一個(gè)部門(mén)銷(xiāo)售;(2) 每個(gè)商店的每個(gè)部門(mén)只有一個(gè)負(fù)責(zé)人;(3) 每個(gè)商店的每種商品只有一個(gè)庫(kù)存數(shù)量。 試回答下列問(wèn)題:(1) 根據(jù)上述規(guī)定,寫(xiě)出關(guān)系模式R的基本函數(shù)依賴(lài); 答: 關(guān)系模式S的基本函數(shù)依賴(lài)如下: (商店編號(hào),商品編號(hào)) →部門(mén)編號(hào),(商店編號(hào),部門(mén)編號(hào))→負(fù)責(zé)人,(商店編號(hào),商品編號(hào)) →數(shù)量 (2) 找出關(guān)系模式R的候選碼;答:關(guān)系模式R的碼為:(商店編號(hào),商品編號(hào), 部門(mén)編號(hào))。 (3) 試問(wèn)關(guān)系模式R最高已經(jīng)達(dá)到第幾范式?為什么?答: 原關(guān)系模式R是屬于1NF的,碼為(商店編號(hào),商品編號(hào), 部門(mén)編號(hào)),非主屬性對(duì)碼的函數(shù)依賴(lài)全為部分函數(shù)依賴(lài),所以不屬于2NF。 消除非主屬性對(duì)碼的函數(shù)依賴(lài)為部分函數(shù)依賴(lài),將關(guān)系模式分解成2NF如下: R1(商店編號(hào),商品編號(hào), 部門(mén)編號(hào), 數(shù)量) R2(商店編號(hào),部門(mén)編號(hào), 負(fù)責(zé)人) (4) 如果R不屬于3NF,請(qǐng)將R分解成3NF模式集。 答:將R分解為 R1(商店編號(hào),商品編號(hào), 部門(mén)編號(hào), 數(shù)量) R2(商店編號(hào),部門(mén)編號(hào), 負(fù)責(zé)人) 分解后的R不存在傳遞的函數(shù)依賴(lài),所以分解后的R已經(jīng)是第3NF 第7章數(shù)據(jù)庫(kù)設(shè)計(jì) 一、選擇題 1、在數(shù)據(jù)庫(kù)設(shè)計(jì)中,用E-R圖來(lái)描述信息結(jié)構(gòu)但不涉及信息在計(jì)算機(jī)中的表示,它是數(shù)據(jù)庫(kù)設(shè)計(jì)的 B 階段。 A.需求分析 B.概念設(shè)計(jì) C.邏輯設(shè)計(jì) D.物理設(shè)計(jì) 2、在關(guān)系數(shù)據(jù)庫(kù)設(shè)計(jì)中,設(shè)計(jì)關(guān)系模式是 C 的任務(wù)。 A.需求分析階段 B.概念設(shè)計(jì)階段 C.邏輯設(shè)計(jì)階段 D.物理設(shè)計(jì)階段 3、數(shù)據(jù)庫(kù)物理設(shè)計(jì)完成后,進(jìn)入數(shù)據(jù)庫(kù)實(shí)施階段,下列各項(xiàng)中不屬于實(shí)施階段的工作是B 。 A.建立庫(kù)結(jié)構(gòu) B.?dāng)U充功能 C.加載數(shù)據(jù) D.系統(tǒng)調(diào)試 4、在數(shù)據(jù)庫(kù)的概念設(shè)計(jì)中,最常用的數(shù)據(jù)模型是 D 。 A.形象模型 B.物理模型 C.邏輯模型 D.實(shí)體聯(lián)系模型 5、從E-R模型關(guān)系向關(guān)系模型轉(zhuǎn)換時(shí),一個(gè)M∶N聯(lián)系轉(zhuǎn)換為關(guān)系模型時(shí),該關(guān)系模式的關(guān)鍵字是 C 。 A.M端實(shí)體的關(guān)鍵字 B.N端實(shí)體的關(guān)鍵字 C.M端實(shí)體關(guān)鍵字與N端實(shí)體關(guān)鍵字組合 D.重新選取其他屬性 6、當(dāng)局部E-R圖合并成全局E-R圖時(shí)可能出現(xiàn)沖突,不屬于合并沖突的是 B 。 A.屬性沖突 B.語(yǔ)法沖突 C.結(jié)構(gòu)沖突 D.命名沖突 7、概念模型獨(dú)立于 B 。 A.E-R模型 B.硬件設(shè)備和DBMS C.操作系統(tǒng)和DBMS D.DBMS 8、數(shù)據(jù)流程圖(DFD)是用于描述結(jié)構(gòu)化方法中 C 階段的工具。 A.可行性分析 B.詳細(xì)設(shè)計(jì) C.需求分析 D.程序編碼 9、下圖所示的E-R圖轉(zhuǎn)換成關(guān)系模型,可以轉(zhuǎn)換為 C 關(guān)系模式。 A.1個(gè) B.2個(gè) C.3個(gè) D.4個(gè)
二、填空題 1、數(shù)據(jù)庫(kù)設(shè)計(jì)的幾個(gè)步驟是 。 【答案:】需求分析,概念設(shè)計(jì),邏輯設(shè)計(jì),物理設(shè)計(jì),系統(tǒng)實(shí)施,系統(tǒng)運(yùn)行和維護(hù) 2、“為哪些表,在哪些字段上,建立什么樣的索引”這一設(shè)計(jì)內(nèi)容應(yīng)該屬于數(shù)據(jù)庫(kù)物理 設(shè)計(jì)階段。 3、在數(shù)據(jù)庫(kù)設(shè)計(jì)中,把數(shù)據(jù)需求寫(xiě)成文檔,它是各類(lèi)數(shù)據(jù)描述的集合,包括數(shù)據(jù)項(xiàng)、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)流、數(shù)據(jù)存儲(chǔ)和數(shù)據(jù)加工過(guò)程等的描述,通常稱(chēng)為數(shù)據(jù)字典 。 4、在設(shè)計(jì)分E-R圖時(shí),由于各個(gè)子系統(tǒng)分別有不同的應(yīng)用,而且往往是由不同的設(shè)計(jì)人員設(shè)計(jì)的,所以各個(gè)分E-R圖之間難免有不一致的地方,這些沖突主要有 ① 、 ② 和 ③ 三類(lèi)。 【答案:】①屬性沖突 ②命名沖突 ③結(jié)構(gòu)沖突 三、簡(jiǎn)答題 數(shù)據(jù)庫(kù)設(shè)計(jì)一般分為哪幾個(gè)階段,每個(gè)階段的主要任務(wù)是什么? 解答:(1)數(shù)據(jù)庫(kù)設(shè)計(jì)分為6個(gè)階段:需求分析、概念結(jié)構(gòu)設(shè)計(jì)、邏輯結(jié)構(gòu)設(shè)計(jì)、物理結(jié)構(gòu)設(shè)計(jì)、數(shù)據(jù)庫(kù)實(shí)施、數(shù)據(jù)庫(kù)運(yùn)行和維護(hù)。 (2)各階段任務(wù)如下:①需求分析:準(zhǔn)確了解與分析用戶(hù)需求(包括數(shù)據(jù)與處理)。②概念結(jié)構(gòu)設(shè)計(jì):通過(guò)對(duì)用戶(hù)需求進(jìn)行綜合、歸納與抽象,形成一個(gè)獨(dú)立于具體 DBMS 的概念模型。③邏輯結(jié)構(gòu)設(shè)計(jì):將概念結(jié)構(gòu)轉(zhuǎn)換為某個(gè) DBMS 所支持的數(shù)據(jù)模型,并對(duì)其進(jìn)行優(yōu)化。④數(shù)據(jù)庫(kù)物理設(shè)計(jì):為邏輯數(shù)據(jù)模型選取一個(gè)最適合應(yīng)用環(huán)境的物理結(jié)構(gòu)(包括存儲(chǔ)結(jié)構(gòu)和存取方法)。⑤數(shù)據(jù)庫(kù)實(shí)施:設(shè)計(jì)人員運(yùn)用 DBMS 提供的數(shù)據(jù)語(yǔ)言、工具及宿主語(yǔ)言,根據(jù)邏輯設(shè)計(jì)和物理設(shè)計(jì)的結(jié)果建立數(shù)據(jù)庫(kù),編制與調(diào)試應(yīng)用程序,組織數(shù)據(jù)入庫(kù),并進(jìn)行試運(yùn)行。 ⑥數(shù)據(jù)庫(kù)運(yùn)行和維護(hù):在數(shù)據(jù)庫(kù)系統(tǒng)運(yùn)行過(guò)程中對(duì)其進(jìn)行評(píng)價(jià)、調(diào)整與修改。 第8章 數(shù)據(jù)庫(kù)編程 一、選擇題 1、修改存儲(chǔ)過(guò)程使用的語(yǔ)句是( A?。?。 A. ALTER PROCEDURE B. DROP PROCEDURE C. INSERT PROCEDUE D. DELETE PROCEDUE 2、創(chuàng)建存儲(chǔ)過(guò)程的語(yǔ)句是( C?。?/span> A. ALTER PROCEDURE B. DROP PROCEDURE C. CREATE PROCEDUE D. INSERT PROCEDUE 3.在SQL Server 編程中,可使用( B )將多個(gè)語(yǔ)句捆綁。 A.{ } B. BEGIN-END C.( ) D. [ ] 二、填空題 1、 存儲(chǔ)過(guò)程是存放在( ?。┥系念A(yù)先定義并編譯好的T-SQL語(yǔ)句。 【答案:】SQL SERVER服務(wù)器上 2、游標(biāo)是系統(tǒng)為用戶(hù)開(kāi)設(shè)的一個(gè)( ),存放SQL語(yǔ)句的執(zhí)行結(jié)果 【答案:】數(shù)據(jù)緩沖區(qū) 第10章數(shù)據(jù)庫(kù)恢復(fù)技術(shù) 一、 選擇題 1、 C 是DBMS的基本單位,它是用戶(hù)定義的一組邏輯一致的程序序列。A.程序 B.命令 C.事務(wù) D.文件 2、事務(wù)的原子性是指 A 。 A.事務(wù)中包括的所有操作要么都做,要么都不做 B.事務(wù)一旦提交,對(duì)數(shù)據(jù)庫(kù)的改變是永久的 C.一個(gè)事務(wù)內(nèi)部的操作及使用的數(shù)據(jù)對(duì)并發(fā)的其他事務(wù)是隔離的 D.事務(wù)必須是使數(shù)據(jù)庫(kù)從一個(gè)一致性狀態(tài)變到另一個(gè)一致性狀態(tài) 3、事務(wù)的一致性是指 D 。 A.事務(wù)中包括的所有操作要么都做,要么都不做 B.事務(wù)一旦提交,對(duì)數(shù)據(jù)為的改變是永久的 C.一個(gè)事務(wù)內(nèi)部的操作及使用的數(shù)據(jù)對(duì)并發(fā)的其他事務(wù)是隔離的D.事務(wù)必須是使數(shù)據(jù)庫(kù)從一個(gè)一致性狀態(tài)變到另一個(gè)一致性狀態(tài) 4、事務(wù)的隔離性是指 C 。 A.事務(wù)中包括的所有操作要么都做,要么都不做 B.事務(wù)一旦提交,對(duì)數(shù)據(jù)庫(kù)的改變是永久的 C.一個(gè)事務(wù)內(nèi)部的操作及使用的數(shù)據(jù)對(duì)并發(fā)的其他事務(wù)是隔離的 D.事務(wù)必須是使數(shù)據(jù)庫(kù)從一個(gè)一致性狀態(tài)變到另一個(gè)一致性狀態(tài) 5、事務(wù)的持續(xù)性是指 B 。 A.事務(wù)中包括的所有操作要么都做,要么都不做 B.事務(wù)一旦提交,對(duì)數(shù)據(jù)庫(kù)的改變是永久的 C.一個(gè)事力內(nèi)部的操作及使用的數(shù)據(jù)對(duì)并發(fā)的其他事務(wù)是隔離的 D.事務(wù)必須是使數(shù)據(jù)庫(kù)從一個(gè)一致性狀態(tài)變到另一個(gè)一致性狀態(tài) 6、若數(shù)據(jù)庫(kù)中只包含成功事務(wù)提交的結(jié)果,則此數(shù)據(jù)庫(kù)就稱(chēng)為處于 狀態(tài)。[B]A.安全 B、.一致 C.不安全 D.不一致 7、若系統(tǒng)在運(yùn)行過(guò)程中,由于某種原因,造成系統(tǒng)停止運(yùn)行,致使事務(wù)在執(zhí)行過(guò)程中以非控制方式終止,這時(shí)內(nèi)存中的信息丟失,而存儲(chǔ)在外存上的數(shù)據(jù)未受影響,這種情況稱(chēng)為B 。 A.事務(wù)故障 B.系統(tǒng)故障 C.介質(zhì)故障 D.運(yùn)行故障 8、若系統(tǒng)在運(yùn)行過(guò)程中,由于某種硬件故障,使存儲(chǔ)在外存上的數(shù)據(jù)部分損失或全部損失,這種情況稱(chēng)為 C 。 A.事務(wù)故障 B.系統(tǒng)故障 C.介質(zhì)故障 D.運(yùn)行故障 9、 B 用來(lái)記錄對(duì)數(shù)據(jù)庫(kù)中數(shù)據(jù)進(jìn)行的每一次更新操作。 A.后援副本 B.日志文件 C.?dāng)?shù)據(jù)庫(kù) D.緩沖區(qū) 10、用于數(shù)據(jù)庫(kù)恢復(fù)的重要文件是 C 。 A.?dāng)?shù)據(jù)庫(kù)文件 B.索引文件 C.日志文件 D.備注文件 11、數(shù)據(jù)庫(kù)恢復(fù)的基礎(chǔ)是利用轉(zhuǎn)儲(chǔ)的冗余數(shù)據(jù)。這些轉(zhuǎn)儲(chǔ)的冗余數(shù)據(jù)包括C 。 A.?dāng)?shù)據(jù)字典、應(yīng)用程序、審計(jì)檔案、數(shù)據(jù)庫(kù)后備副本 B.?dāng)?shù)據(jù)字典、應(yīng)用程序、日志文件、審計(jì)檔案 C.日志文件、數(shù)據(jù)庫(kù)后備副本 D.?dāng)?shù)據(jù)字典、應(yīng)用程序、數(shù)據(jù)庫(kù)后備副本 二、 填空題 1、 事務(wù) 是DBMS的基本單位,它是用戶(hù)定義的一組邏輯一致的程序序列。 2、.若事務(wù)在運(yùn)行過(guò)程中,由于種種原因,使事務(wù)未運(yùn)行到正常終止點(diǎn)之間就被撤消,這種情況就稱(chēng)為事務(wù)故障 。 3、數(shù)據(jù)庫(kù)恢復(fù)是將數(shù)據(jù)庫(kù)從 錯(cuò)誤 狀態(tài)恢復(fù)到某一已知的正確狀態(tài) 的功能。 4、數(shù)據(jù)庫(kù)系統(tǒng)在運(yùn)行過(guò)程中,可能會(huì)發(fā)生故障。故障主要有事務(wù)故障、系統(tǒng)故障 、介質(zhì)故障和計(jì)算機(jī)病毒四類(lèi)。 5、數(shù)據(jù)庫(kù)系統(tǒng)是利用存儲(chǔ)在外存上其他地方的冗余數(shù)據(jù) 來(lái)重建被破壞的數(shù)據(jù)庫(kù)。它主要有兩種: 后援副本 和 日志文件 。 三、 簡(jiǎn)答題 1、什么是事務(wù),事務(wù)有哪些特性? 答:事務(wù)是DBMS的基本工作單位,它是用戶(hù)定義的一組邏輯一致的程序序列。它是一個(gè)不可分割的工作單位,其中包含的所有操作,要么都執(zhí)行,要么都不執(zhí)行。 事務(wù)具有4 個(gè)特性:原子性(Atomicity )、一致性(consistency )、隔離性( Isolation )和持續(xù)性(Durability )。這4 個(gè)特性也簡(jiǎn)稱(chēng)為ACID 特性。 原子性:事務(wù)是數(shù)據(jù)庫(kù)的邏輯工作單位,事務(wù)中包括的諸操作要么都做,要么都不做。 一致性:事務(wù)執(zhí)行的結(jié)果必須是使數(shù)據(jù)庫(kù)從一個(gè)一致性狀態(tài)變到另一個(gè)一致性狀態(tài)。 隔離性:一個(gè)事務(wù)的執(zhí)行不能被其他事務(wù)干擾。即一個(gè)事務(wù)內(nèi)部的操作及使用的數(shù)據(jù) 對(duì)其他并發(fā)事務(wù)是隔離的,并發(fā)執(zhí)行的各個(gè)事務(wù)之間不能互相干擾。 持續(xù)性:持續(xù)性也稱(chēng)永久性(Perfnanence ) ,指一個(gè)事務(wù)一旦提交,它對(duì)數(shù)據(jù)庫(kù)中數(shù)據(jù)的改變就應(yīng)該是永久性的。接下來(lái)的其他操作或故障不應(yīng)該對(duì)其執(zhí)行結(jié)果有任何影響。 2、事務(wù)中的提交和回滾是什么意思? 答:事務(wù)中的提交(COMMIT)是提交事務(wù)的所有操作。具體說(shuō)就是將事務(wù)中所有對(duì)數(shù)據(jù)庫(kù)的更新寫(xiě)回到磁盤(pán)上的物理數(shù)據(jù)庫(kù)中去,事務(wù)正常結(jié)束。事務(wù)中的回滾(ROLLBACK)是數(shù)據(jù)庫(kù)滾回到事務(wù)開(kāi)始時(shí)的狀態(tài)。具體地說(shuō)就是,在事務(wù)運(yùn)行的過(guò)程中發(fā)生了某種故障,事務(wù)不能繼續(xù)執(zhí)行,系統(tǒng)將事務(wù)中對(duì)數(shù)據(jù)庫(kù)的所有已完成的更新操作全部撤消,使數(shù)據(jù)庫(kù)回滾到事務(wù)開(kāi)始時(shí)的狀態(tài)。 3、為什么要設(shè)立日志文件? 答:設(shè)立日志文件的目的,是為了記錄對(duì)數(shù)據(jù)庫(kù)中數(shù)據(jù)的每一次更新操作。從而DBMS可以根據(jù)日志文件進(jìn)行事務(wù)故障的恢復(fù)和系統(tǒng)故障的恢復(fù),并可結(jié)合后援副本進(jìn)行介質(zhì)故障的恢復(fù)。 第11章 并發(fā)控制 一、 選擇題: 1、.設(shè)有兩個(gè)事務(wù)T1、T2,其并發(fā)操作如下所示,下面評(píng)價(jià)正確的是 B 。 A.該操作不存在問(wèn)題 B.該操作丟失修改C.該操作不能重復(fù)讀 D.該操作讀“臟”數(shù)據(jù)
2、設(shè)有兩個(gè)事務(wù)T1、T2,其并發(fā)操作如下所示,下面評(píng)價(jià)正確的是 C 。 A.該操作不存在問(wèn)題 B.該操作丟失修改 C.該操作不能重復(fù)讀 D.該操作讀“臟”數(shù)據(jù)
3、設(shè)有兩個(gè)事務(wù)T1、T2,其并發(fā)操作如下所示,下列評(píng)價(jià)正確的是 D 。 A.該操作不存在問(wèn)題 B.該操作丟失修改 C.該操作不能重復(fù)讀 D.該操作讀“臟”數(shù)據(jù)
4、解決并發(fā)操作帶來(lái)的數(shù)據(jù)不一致性總是普遍采用A 。 A.封鎖 B.恢復(fù) C.存取控制 D.協(xié)商 5、若事務(wù)T對(duì)數(shù)據(jù)R已經(jīng)加X(jué)鎖,則其他事務(wù)對(duì)數(shù)據(jù)R D 。 A.可以加S鎖不能加X(jué)鎖 B.不能加S鎖可以加X(jué)鎖 C.可以加S鎖也可以加X(jué)鎖 D.不能加任何鎖 6、關(guān)于“死鎖”,下列說(shuō)法中正確的是 D 。 A.死鎖是操作系統(tǒng)中的問(wèn)題,數(shù)據(jù)庫(kù)操作中不存在 B.在數(shù)據(jù)庫(kù)操作中防止死鎖的方法是禁止兩個(gè)用戶(hù)同時(shí)操作數(shù)據(jù)庫(kù) C.當(dāng)兩個(gè)用戶(hù)競(jìng)爭(zhēng)相同資源時(shí)不會(huì)發(fā)生死鎖 D.只有出現(xiàn)并發(fā)操作時(shí),才有可能出現(xiàn)死鎖 7、對(duì)并發(fā)操作若不加以控制,可能會(huì)帶來(lái) D 問(wèn)題。 A.不安全 B.死鎖 C.死機(jī) D.不一致 8、并發(fā)操作會(huì)帶來(lái)哪些數(shù)據(jù)不一致性 D 。 A.丟失修改、不可重復(fù)讀、臟讀、死鎖 B.不可重復(fù)讀、臟讀、死鎖 C.丟失修改、臟讀、死鎖 D.丟失修改、不可重復(fù)讀、臟讀 二、 填空題 1、DBMS的基本工作單位是事務(wù),它是用戶(hù)定義的一組邏輯一致的程序序列;并發(fā)控制的主要方法是封鎖 機(jī)制。 2、有兩種基本類(lèi)型的鎖,它們是 共享鎖 和 排它鎖 。 三、 簡(jiǎn)答題 1、敘述數(shù)據(jù)庫(kù)中死鎖產(chǎn)生的原因和解決死鎖的方法。答:死鎖產(chǎn)生的原因:封鎖可以引起死鎖。比如事務(wù)T1封鎖了數(shù)據(jù)A,事務(wù)T2封鎖了數(shù)據(jù)B。T1又申請(qǐng)封鎖數(shù)據(jù)B,但因B被T2封鎖,所以T1只能等待。T2又申請(qǐng)封鎖數(shù)據(jù)A,但A已被T1封鎖,所以也處于等待狀態(tài)。這樣,T1和T2處于相互等待狀態(tài)而均不能結(jié)束,這就形成了死鎖。解決死鎖的常用方法有如下三種:(1)要求每個(gè)事務(wù)一次就要將它所需要的數(shù)據(jù)全部加鎖。(2)預(yù)先規(guī)定一個(gè)封鎖順序,所有的事務(wù)都要按這個(gè)順序?qū)嵭蟹怄i。(3)允許死鎖發(fā)生,當(dāng)死鎖發(fā)生時(shí),系統(tǒng)就選擇一個(gè)處理死鎖代價(jià)小的事務(wù),將其撤消,釋放此事務(wù)持有的所有的鎖,使其他事務(wù)能繼續(xù)運(yùn)行下去。 2、基本的封鎖類(lèi)型有幾種?試敘述它們的含義。 答:基本的封鎖的類(lèi)型有排它鎖(“X”鎖)和共享鎖(“S”鎖)兩種。 若事務(wù)T對(duì)數(shù)據(jù)A加上X鎖,則只允許事務(wù)T讀取和修改數(shù)據(jù)A,其他事務(wù)都不能再對(duì)A加任何類(lèi)型的鎖,直到T釋放A上的鎖。 若事務(wù)T對(duì)數(shù)據(jù)A加上S鎖,則其他事務(wù)可以再對(duì)A加S鎖,而不能加X(jué)鎖,直到T釋放A上的鎖。 3、什么是活鎖? 如果事務(wù) Tl 封鎖了數(shù)據(jù) R ,事務(wù)幾又請(qǐng)求封鎖 R ,于是幾等待。幾也請(qǐng)求封鎖 R ,當(dāng) Tl 釋放了 R 上的封鎖之后系統(tǒng)首先批準(zhǔn)了幾的請(qǐng)求,幾仍然等待。然后幾又請(qǐng)求封鎖 R ,當(dāng)幾釋放了 R 上的封鎖之后系統(tǒng)又批準(zhǔn)了幾的請(qǐng)求 … … 幾有可能永遠(yuǎn)等待,這就是活鎖的情形?;铈i的含義是該等待事務(wù)等待時(shí)間太長(zhǎng),似乎被鎖住了,實(shí)際上可能被激活。
|
|