數(shù)據(jù)庫 練習(xí)題答案.doc
《數(shù)據(jù)庫 練習(xí)題答案.doc》由會(huì)員分享,可在線閱讀,更多相關(guān)《數(shù)據(jù)庫 練習(xí)題答案.doc(14頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
第四章 練習(xí)題 一、選擇題 1、設(shè)有兩個(gè)關(guān)系R(A,B)和S(B,C),與下列SELECT語句 SELECT A,B FROM R WHERE B NOT IN(SELECT B FROM S WHERE C=C56); 等價(jià)的關(guān)系代數(shù)表達(dá)式是 [ C] C≠C56 A.πA,B(σC≠C56(R?S)) B.πA,B(R ? S) C.R-πA,B(σC= C56(R?S)) D.R-πA,B(σC≠C56(R?S)) 2、嵌入式SQL的預(yù)處理方式,是指[ B] A.識(shí)別出SQL語句,加上前綴標(biāo)識(shí)和結(jié)束標(biāo)志 B.把嵌入的SQL語句處理成函數(shù)調(diào)用形式 C.對(duì)源程序進(jìn)行格式化處理 D.把嵌入的SQL語句編譯成目標(biāo)程序 3、SQL中,“DELETE FROM 表名”表示 [ A] A.從基本表中刪除所有元組 B.從基本表中刪除所有屬性 C.從數(shù)據(jù)庫中撤消這個(gè)基本表 D.從基本表中刪除重復(fù)元組 4、SQL中,聚合函數(shù)COUNT(列名)用于 [ C] A.計(jì)算元組個(gè)數(shù) B.計(jì)算屬性的個(gè)數(shù) C.對(duì)一列中的非空值計(jì)算個(gè)數(shù) D.對(duì)一列中的非空值和空值計(jì)算個(gè)數(shù) 5、在傳統(tǒng)SQL技術(shù)中,使用“ORDER BY”子句的SELECT語句查詢的結(jié)果,實(shí)際上為 [ B] A.?dāng)?shù)組 B.列表 C.包 D.集合 6、在數(shù)據(jù)庫中,能提高查詢速度的是(C ) A. 數(shù)據(jù)依賴 B. 視圖 C. 索引 D. 數(shù)據(jù)壓縮 7、語句 delete from sc 表明( A ?。? A. 刪除sc中的全部記錄 B. 刪除基本表sc C. 刪除基本表sc中的列數(shù)據(jù) D. 刪除基本表sc中的部分行 8、在DB應(yīng)用中,一般一條SQL 語句可產(chǎn)生或處理一組記錄,而DB主語言語句一般一次只能處理一條記錄,其協(xié)調(diào)可通過( B )實(shí)現(xiàn)。 A. 指針 B. 游標(biāo) C. 數(shù)組 D. 棧 9、在下列基本表的定義中,數(shù)值5表示( C ) CREATE TABLE student (Sno char(5) not null unique,Sname char(2)); A. 表中有5條記錄 B. 表中有5列 C. 表中字符串Sno 的長(zhǎng)度 D. 表格的大小 10、 在視圖上不能完成的操作是( C ) A. 更新視圖 B. 查詢 C. 在視圖上定義新的基本表 D. 在視圖上定義新視圖 11、下列聚合函數(shù)中不忽略空值 (null) 的是 (C) A、SUM (列名) B、MAX (列名) C、COUNT ( * ) D、AVG (列名) 12、SQL的查詢語句的where子句中,對(duì)空值的操作,不正確的是 ( C?。? A、where AGE IS NULL B、where AGE IS NOT NULL C、where AGE = NULL D、where NOT (AGE IS NULL) 13、Transact-SQL對(duì)標(biāo)準(zhǔn)SQL的擴(kuò)展主要表現(xiàn)為( A )。 A. 加入了程序控制結(jié)構(gòu)和變量 B. 加入了建庫和建表語句 C. 提供了分組(Group By)查詢功能 D. 提供了Min、Max待統(tǒng)計(jì)函數(shù) 14、以下哪種情況應(yīng)盡量創(chuàng)建索引( A )。 A. 在Where子句中出現(xiàn)頻率較高的列 B. 具有很多NULL值的列 C. 記錄較少的基本表 D. 需要更新頻繁的基本表 15、下列SQL Server語句中出現(xiàn)語法錯(cuò)誤的是( D )。 A. DECLARE @Myvar INT B. SELECT * FROM [AAA] C. CREATE DATABASE AAA D. DELETE * FROM AAA 16、屬于事務(wù)控制的語句是( A )。 A. Begin Tran、Commit、RollBack B. Begin、Continue、End C. Create Tran、Commit、RollBack D. Begin Tran、Continue、End 17、在SQL語言的SELECT語句中,實(shí)現(xiàn)投影操作的是哪個(gè)子句?(A ) A)select B)from C)where D)grou by 18、 用二維表結(jié)構(gòu)表示實(shí)體以及實(shí)體間聯(lián)系的數(shù)據(jù)模型稱為(C ) A)網(wǎng)狀模型 B)層次模型 C)關(guān)系模型 D)面向?qū)ο竽P? 第(19)至(21)題是基于如下兩個(gè)關(guān)系,其中雇員信息表關(guān)系EMP的主鍵是雇員號(hào),部門信息表關(guān)系DEPT的主鍵是部門號(hào) EMP DEPT 雇員號(hào) 雇員名 部門號(hào) 工資 部門號(hào) 部門名 地址 001 010 056 101 張 山 王宏達(dá) 馬林生 趙 敏 02 01 02 04 2000 1200 1000 1500 01 02 03 04 業(yè)務(wù)部 銷售部 服務(wù)部 財(cái)務(wù)部 1號(hào)樓 2號(hào)樓 3號(hào)樓 4號(hào)樓 19、 若執(zhí)行下面列出的操作,哪個(gè)操作不能成功執(zhí)行?(D ) A) 從EMP中刪除行(‘010’,‘王宏達(dá)’,‘01’,1200) B) 在EMP中插入行(‘102’,‘趙敏’,‘01’,1500) C) 將EMP中雇員號(hào)=‘056’的工資改為1600元 D) 將EMP中雇員號(hào)=‘101’的部門號(hào)改為‘05’ 20、若執(zhí)行下面列出的操作,哪個(gè)操作不能成功執(zhí)行?(C ) A) 從DEPT 中刪除部門號(hào)=‘03’的行 B)在DEPT中插入行(‘06’,‘計(jì)劃部’,‘6號(hào)樓’) C) 將DEPT中部門號(hào)=‘02’的部門號(hào)改為‘10’ D) 將DEPT中部門號(hào)=‘01’的地址改為‘5號(hào)樓’ 21、在雇員信息表關(guān)系EMP中,哪個(gè)屬性是外鍵(foreign key)?(C ) A) 雇員號(hào) B) 雇員名 C) 部門號(hào) D) 工資 22、設(shè)關(guān)系R和關(guān)系S的元數(shù)分別是3和4,關(guān)系T是R與S的廣義笛卡爾積,即:T=RS,則關(guān)系T的元數(shù)是(A ) A) 7 B) 9 C) 12 D) 1 23、設(shè)屬性A是關(guān)系R的主屬性,則屬性A不能取空值(NULL)。這是(A ) A) 實(shí)體完整性規(guī)則 B) 參照完整性規(guī)則 C) 用戶定義完整性規(guī)則 D) 域完整性規(guī)則 24、 下面列出的關(guān)于“視圖(View)”的條目中,哪一條是不正確的?( B) A) 視圖是外模式 B)使用視圖可以加快查詢語句的執(zhí)行速度 C) 視圖是虛表 D) 使用視圖可以簡(jiǎn)化查詢語句的編寫 25、 SQL語言集數(shù)據(jù)查詢、數(shù)據(jù)操縱、數(shù)據(jù)定義和數(shù)據(jù)控制功能于一體,語句INSERT、DELETE、UPDATE實(shí)現(xiàn)哪類功能?(B ) A) 數(shù)據(jù)查詢 B) 數(shù)據(jù)操縱 C) 數(shù)據(jù)定義 D) 數(shù)據(jù)控制 26、在數(shù)據(jù)庫管理系統(tǒng)中,下面哪個(gè)模塊不是數(shù)據(jù)庫存取的功能模塊?( A) A) 事務(wù)管理程序模塊 B) 數(shù)據(jù)更新程序模塊 C) 交互式程序查詢模塊 D) 查詢處理程序模塊 27、SQL查詢語句中,用于測(cè)試子查詢是否為空的謂詞是(A)。 A、EXISTS B、UNIQUE C、SOME D、ALL 28、下列SQL語句中,插入數(shù)據(jù)的是(D )。 A、CREATE B、ALTER C、UPDATE D、INSERT 29、 在下面所列出的條目中,哪些是數(shù)據(jù)庫管理系統(tǒng)的基本功能?(D ) Ⅰ.數(shù)據(jù)庫定義 Ⅱ.數(shù)據(jù)庫的建立和維護(hù) Ⅲ.數(shù)據(jù)庫存取 Ⅳ.數(shù)據(jù)庫和網(wǎng)絡(luò)中其他軟件系統(tǒng)的通信 A) Ⅰ和Ⅱ B) Ⅰ、Ⅱ和Ⅲ C) Ⅱ和Ⅲ D) 都是 30、當(dāng)修改基本數(shù)據(jù)時(shí),下列關(guān)系視圖的說法正確的是(B ) A、需要重建 B、查以看到修改結(jié)果 C、無法看到修改結(jié)果式 D、不許修改帶視圖的基表 31、 在數(shù)據(jù)庫管理系統(tǒng)的層次結(jié)構(gòu)中,由高級(jí)到低級(jí)的層次排列順序?yàn)?D ) A) 應(yīng)用層、數(shù)據(jù)存取層、數(shù)據(jù)存儲(chǔ)層、語言翻譯處理層 B) 應(yīng)用層、數(shù)據(jù)存儲(chǔ)層、數(shù)據(jù)存取層、語言翻譯處理層 C) 應(yīng)用層、數(shù)據(jù)存儲(chǔ)層、語言翻譯處理層、數(shù)據(jù)存取層 D) 應(yīng)用層、語言翻譯處理層、數(shù)據(jù)存取層、數(shù)據(jù)存儲(chǔ)層 32、在SQL語言的SELECT語句中,實(shí)現(xiàn)投影操作的是( A )子句。 A、select B、from C、where D、grou by 33、SQL中,“AGE IN(20,22)”的語義是( D )。 A)AGE<=22 AND AGE >=20 B)AGE <22 AND AGE >20 C)AGE =20 AND AGE =22 D)AGE =20 OR AGE =22 34 SQL中,聚合函數(shù)COUNT(列名)用于( C ) A.計(jì)算元組個(gè)數(shù) B.計(jì)算屬性的個(gè)數(shù) C.對(duì)一列中的非空值計(jì)算個(gè)數(shù) D.對(duì)一列中的非空值和空值計(jì)算個(gè)數(shù) 35、Transact-SQL對(duì)標(biāo)準(zhǔn)SQL的擴(kuò)展主要表現(xiàn)為(A )。 A. 加入了程序控制結(jié)構(gòu)和變量 B. 加入了建庫和建表語句 C. 提供了分組(Group By)查詢功能 D. 提供了Min、Max統(tǒng)計(jì)函數(shù) 36、已知關(guān)系:廠商(廠商號(hào),廠名) PK=廠商號(hào) 產(chǎn)品(產(chǎn)品號(hào),顏色,廠商號(hào)) PK=產(chǎn)品號(hào),F(xiàn)K=廠商號(hào) 假設(shè)兩個(gè)關(guān)系中已經(jīng)存在如圖所示元組: 廠商 產(chǎn)品 廠商號(hào) 廠名 C01 宏達(dá) C02 立仁 C03 廣源 產(chǎn)品號(hào) 顏色 廠商號(hào) P01 紅 C01 P02 黃 C03 若再往產(chǎn)品關(guān)系中插入如下元組: I(P03,紅,C02) II(P01,藍(lán),C01) III(P04,白,C04) IV(P05,黑,null) 能夠插入的元組是( D ) A I,II,IV B I,III C I,II D I,IV 37、設(shè)有一個(gè)關(guān)系:DEPT(DNO,DNAME),如果要找出倒數(shù)第三個(gè)字母為W,并且至少包含4個(gè)字母的DNAME,則查詢條件子句應(yīng)寫成WHERE DNAME LIKE ( B ) A ‘_ _ W _ %’ B ‘_ % W _ _’ C ‘_ W _ _’ D ‘_ W _ %’ 38、下列SQL語句中,修改表結(jié)構(gòu)的是(D )。 A、CREATE B、INSERT C、UPDATE D、ALTER 39、SQL語句通常稱為( A)。 A、結(jié)構(gòu)化查詢語言 B、結(jié)構(gòu)化控制語言 C、結(jié)構(gòu)化定義語言 D、結(jié)構(gòu)化操縱語言 40、SQL語言的一體化特點(diǎn)主要是與( B)相比較而言的。 A、操作系統(tǒng)命令 B、非關(guān)系模型的數(shù)據(jù)語言 C、高級(jí)語言 D、自然語言 41、SQL語言中,刪除一個(gè)表的命令是( B ) A、 DELETE table B、DROP table C、 CLEAR table D、 REMORE table 42、在基表S中查詢所有姓名中有“國”的學(xué)生,在WHERE子句中應(yīng)使用( A)通配符。 A. LIKE ’%國%’ B. LIKE ‘%國_’ C. LIKE ’_國%’ D. LIKE ‘_國_’ 43、下列哪個(gè)不屬于數(shù)據(jù)庫對(duì)象(B ) A、默認(rèn) B、SELECT語句 C、存儲(chǔ)過程 D、視圖 44、下列那一個(gè)不屬于SQL SERVER工具(A ) A數(shù)據(jù)庫管理器 B、事件探查器 C、導(dǎo)入和導(dǎo)出數(shù)據(jù) D、查詢分析器 45、 下列那一個(gè)不屬于企業(yè)管理器的功能(D ) A、注冊(cè)服務(wù)器 B、配置本地和遠(yuǎn)程服務(wù)器 C、引入和導(dǎo)出數(shù)據(jù) D、為WINDOWS創(chuàng)建操作系統(tǒng)用戶 46、關(guān)于SQL Server文件組的敘述正確的是:( A )。 A、一個(gè)數(shù)據(jù)庫文件不能存在于兩個(gè)或兩個(gè)以上的文件組里 B、日志文件可以屬于某個(gè)文件組 C、文件組可以包含不同數(shù)據(jù)庫的數(shù)據(jù)文件 D、一個(gè)文件組只能放在同一個(gè)存儲(chǔ)設(shè)備中 47、下面關(guān)于外碼的描述中,不正確的是(C )。 A. 外碼體現(xiàn)了關(guān)系間的聯(lián)系手段 B. 外碼是某個(gè)關(guān)系的碼 C. 外碼不是任何關(guān)系的碼 D. 外碼是一個(gè)關(guān)系的碼同時(shí)是另一個(gè)關(guān)系的屬性 48、在SQL Server 中關(guān)于索引敘述正確的是:( B )。 A、每個(gè)數(shù)據(jù)庫表可以建立多個(gè)聚集索引 B、每個(gè)表可以定義多個(gè)非聚集索引 C、索引的數(shù)據(jù)保存在同一個(gè)表中 D、索引不會(huì)改變表中的數(shù)據(jù) 49、關(guān)于索引描述錯(cuò)誤的是以下的哪一個(gè)?( A) A、表中的任何數(shù)據(jù)列都可以添加索引 B、創(chuàng)建索引的列最好不要含有許多重復(fù)的值 C、一般不給很少使用的列添加索引 D、并不是數(shù)據(jù)庫中聚集索引越多搜索效率就越高 50、關(guān)于存儲(chǔ)過程的描述正確的一項(xiàng)是:( C )。 A、存儲(chǔ)過程的存在獨(dú)立于表,它存放在客戶端,供客戶使用 B、存儲(chǔ)過程只是一些T-SQL語句的集合,不能看作SQL Server的對(duì)象 C、存儲(chǔ)過程可以使用控制流語句和變量,大大增強(qiáng)了SQL的功能 D、存儲(chǔ)過程在調(diào)用時(shí)會(huì)自動(dòng)編譯,因此使用方便 51、關(guān)于觸發(fā)器敘述正確的是( A )。 A、觸發(fā)器是自動(dòng)執(zhí)行的,可以在一定條件下觸發(fā) B、觸發(fā)器不可以同步數(shù)據(jù)庫的相關(guān)表進(jìn)行級(jí)聯(lián)更改 C、SQL Server 不支持DDL觸發(fā)器 D、觸發(fā)器不屬于存儲(chǔ)過程 52、在基表S中刪除電話號(hào)碼(PHONE)屬性使用( B) 命令。 A. ALTER S DROP PHONE B. ALTER TABLE S DROP PHONE C. UPDATE TABLE S PHONE D. DROP TABLE S PHONE 54、描述事物性質(zhì)的最小數(shù)據(jù)單位是( C )。 A. 記錄 B. 文件 C. 數(shù)據(jù)項(xiàng) D. 數(shù)據(jù)庫 55.在SQL數(shù)據(jù)庫中,視圖(view)是從一個(gè)或幾個(gè)基表(或視圖)導(dǎo)出的表,它本身不獨(dú)立存儲(chǔ)在數(shù)據(jù)庫中,即數(shù)據(jù)庫中只存放視圖的定義而不存放視圖對(duì)應(yīng)的數(shù)據(jù),這些數(shù)據(jù)仍然存放在對(duì)應(yīng)的基表中。因此視圖( B )。 A. 也是一個(gè)表 B. 是一個(gè)虛表 C. 是一個(gè)數(shù)據(jù)庫 D. 是一個(gè)文件 56. 當(dāng)前DBMS所支持的數(shù)據(jù)模型的主流是(C)。 A. 網(wǎng)狀模型 B. 層次模型 C. 關(guān)系模型 D. 面向?qū)ο竽P? 57. 能唯一地標(biāo)識(shí)實(shí)體屬性的( C)稱為主碼。 A. 組和 B. 排列 C. 集合 D. 元組 58 下述關(guān)于數(shù)據(jù)庫系統(tǒng)的正確敘述是( B)。 A. 數(shù)據(jù)庫中只存在數(shù)據(jù)項(xiàng)之間的聯(lián)系 B. 數(shù)據(jù)庫的數(shù)據(jù)項(xiàng)之間和記錄之間都存在聯(lián)系 C. 數(shù)據(jù)庫的數(shù)據(jù)項(xiàng)之間無聯(lián)系,記錄之間存在聯(lián)系 D. 數(shù)據(jù)庫的數(shù)據(jù)項(xiàng)之間和記錄之間都不存在聯(lián)系 59. 授權(quán)定義經(jīng)過編譯和存儲(chǔ)在( D)中。 A. DBMD B. 視圖 C. 基表 D. 數(shù)據(jù)庫 60.假定學(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 61.?dāng)?shù)據(jù)庫技術(shù)的奠基人之一,E.F.Codd于1970年發(fā)表過多篇論文,主要論述的是(C) 。 A. 層次數(shù)據(jù)模型 B. 網(wǎng)絡(luò)數(shù)據(jù)模型 C. 關(guān)系數(shù)據(jù)模型 D. 面向?qū)ο髷?shù)據(jù)模型 62.?dāng)?shù)據(jù)庫管理系統(tǒng)通常提供授權(quán)功能來控制不同用戶訪問數(shù)據(jù)的權(quán)限,這主要是為了實(shí)現(xiàn)數(shù)據(jù)庫的( D)。 A. 可靠性 B. 一致性 C. 完整性 D. 安全性 63、 SQL語言的GRANT和REVOKE語句主要用來維護(hù)數(shù)據(jù)庫的(A )。 A. 安全性 B. 完整性 C. 可靠性 D. 一致性 64、 在關(guān)系數(shù)據(jù)庫中,實(shí)現(xiàn)“表中任意二行不能相同”的約束是靠(C ) 。 A. 外碼 B. 屬性 C. 主碼 D. 列 65、 對(duì)表進(jìn)行垂直方向的分割用的運(yùn)算是(B )。 A. 交 B. 投影 C. 選擇 D. 連接 66、 關(guān)系數(shù)據(jù)庫中,實(shí)現(xiàn)表與表之間的聯(lián)系是通過_(B)。 A. 實(shí)體完整性規(guī)則 B. 參照完整性規(guī)則 C. 用戶自定義完整性 D. 值域 67、 關(guān)系數(shù)據(jù)庫中,實(shí)現(xiàn)主碼標(biāo)識(shí)元組的作用是通過(A) 。 A. 實(shí)體完整性規(guī)則 B. 參照完整性規(guī)則 C. 用戶自定義完整性 D. 屬性的值域 68、如果有n個(gè)事務(wù)串行調(diào)度,那么不同的有效調(diào)度有 [ D] A.n2 B.2n C.4n D.n! 69、部分匹配查詢中有關(guān)通配符“_”的正確的敘述是 ( D) A.“_”代表多個(gè)字符 B.“_”可以代表零個(gè)或多個(gè)字符 C.“_”不能與“%”一同使用 D.“_”代表一個(gè)字符 70、下列SQL語句中,能夠?qū)崿F(xiàn)“收回用戶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 71、把對(duì)關(guān)系SC的屬性GRADE的修改權(quán)授予用戶ZHAO的SQL語句是 (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 二、填空題 1、在SQL查詢語句中,用于測(cè)試子查詢是否為空的謂詞是_ EXISTS __。 2、在查詢操作結(jié)果中不出現(xiàn)重復(fù)元組,應(yīng)在Select子句中使用_ DISTINCT_保留字。 3、.SQL的SELECT語句在未使用分組子句但在SELECT子句中使用了聚合函數(shù)。此時(shí)SELECT子句的語句就不是投影的意思了,而是對(duì)查詢結(jié)果執(zhí)行聚合操作。 4、數(shù)據(jù)庫系統(tǒng)的權(quán)限控制方法分為 自主存取控制和 強(qiáng)制存取控制方法兩種 5、在SQL Server 中,數(shù)據(jù)庫的文件分為主數(shù)據(jù)文件_、輔助數(shù)據(jù)文件_和_事務(wù)日志文件三大類; 6、SQL的數(shù)據(jù)操縱功能主要包括INSERT、__UPDATE__和__DELETE_三個(gè)語句。 7、在字符匹配查詢中,通配符“%”代表_任意多個(gè)字符___,“_”代表__任意單個(gè)字符。 8、觸發(fā)器是一種特殊的存儲(chǔ)過程,它可以在對(duì)一個(gè)表上進(jìn)行__插入__、_刪除_和___修改__操作中的任一種或幾種操作時(shí)被自動(dòng)調(diào)用執(zhí)行。 9、視圖是一個(gè)虛表,它是從一個(gè)或幾個(gè)基本表中導(dǎo)出的表。在數(shù)據(jù)庫中,只存放視圖的結(jié)構(gòu)定義,不存放視圖的對(duì)應(yīng)的數(shù)據(jù)。 三、判斷題 1、視圖是一張?zhí)摫?,所有的視圖中不存儲(chǔ)數(shù)據(jù)(√) 2、用戶不允許使用視圖修改表數(shù)據(jù)( ) 3、數(shù)據(jù)庫中的視圖只能使用所屬數(shù)據(jù)庫的表,不能訪問其它數(shù)據(jù)庫的表( ) 4、視圖既可以通過表得到,也可以通過其它視圖得到(√) 5、規(guī)則在創(chuàng)建后,并不能直接使用,必須綁定到表中某一列或者用戶定義的數(shù)據(jù)類型上。( √) 6、 創(chuàng)建規(guī)則對(duì)象后,必須把它綁定到一個(gè)列或用戶定義的數(shù)據(jù)類型上才能起作用。(√) 7、 觸發(fā)器就其本質(zhì)而言是一種特殊的存儲(chǔ)過程。存儲(chǔ)過程和觸發(fā)器在數(shù)據(jù)庫的開發(fā)中,在維護(hù)數(shù)據(jù)庫實(shí)體完整性等方面具有不可替代的作用。() 8、 現(xiàn)實(shí)世界的對(duì)象在數(shù)據(jù)庫中用實(shí)體描述 (╳ ) 9、 游標(biāo)是系統(tǒng)為用戶的查詢結(jié)果開辟的數(shù)據(jù)緩沖區(qū),存放SELECT語句的查詢結(jié)果。(√) 10、 在數(shù)據(jù)庫系統(tǒng)中,核心的部分是應(yīng)用程序。(√ ) 11、候選碼可以選作主碼,但一個(gè)主碼不總是候選碼. (√ ) 12、存儲(chǔ)過程是存放在服務(wù)器上的預(yù)先定義與編譯好的SQL語句的命名集合(√) 13.視圖、表是一樣的,都可以進(jìn)行更新操作的。 ( ╳ ) 14、觸發(fā)器操作與約束有沖突時(shí),觸發(fā)器仍會(huì)執(zhí)行。( ╳ ) 15、刪除觸發(fā)表時(shí),觸發(fā)器被隨之刪除。(√) 16、Order by子句僅對(duì)檢索數(shù)據(jù)的顯示有影響,并不改變表中行的內(nèi)部順序。(√) 17、從一個(gè)表中刪除元組時(shí),delete和drop table命令可以起到同樣的效果。() 18、與主鍵不同,惟一性可以是null值。(√) 19、使用having子句是為了限制group by子句返回的行的個(gè)數(shù)。(√) 20、在數(shù)據(jù)表定義時(shí)設(shè)置Primary key是數(shù)據(jù)庫的實(shí)體完整性控制。 ( √ ) 21、在數(shù)據(jù)表定義時(shí)設(shè)置主鍵(Primary key)則不允許插入全為空的記錄。(√ ) 22、數(shù)據(jù)庫一旦建立,就沒有辦法重命名了,所以命名數(shù)據(jù)庫要慎重。( ) 四、綜合題 1、設(shè)某商業(yè)集團(tuán)關(guān)于商店銷售商品的數(shù)據(jù)庫中有三個(gè)基本表: 商店 SHOP(S#,SNAME,AREA,MGR_NAME) 其屬性是商店編號(hào),商店名稱,區(qū)域名,經(jīng)理姓名。 銷售 SALE(S#,G#, QUANTITY) 其屬性是商店編號(hào),商品編號(hào),銷售數(shù)量。 商品 GOODS(G#,GNAME,PRICE) 其屬性是商品編號(hào),商品名稱,單價(jià)。 (1)試寫出檢索銷售“冰箱”的商店的編號(hào)和商店名稱的SELECT語句表達(dá)形式。 (2)試寫出下列操作的SQL語句: 從SALE表中,把“開開商店”中銷售單價(jià)高于1000元的商品的銷售元組全部刪除。 (3)試寫出下列操作的SQL語句: 統(tǒng)計(jì)區(qū)域名為“EAST”的所有商店銷售的每一種商品的總數(shù)量和總價(jià)值。 要求顯示(G#,GNAME,SUM_QUANTITY,SUM_VALUE),其屬性為商品編號(hào)、商品名稱、銷售數(shù)量、銷售價(jià)值。 1、答:解:(1)SELECT語句如下: SELECT A.S#,SNAME FROM SHOP A,SALE B,GOODS C WHERE A.S#=B.S# AND B.G#=C.G# AND GNAME=冰箱; (2)解:DELETE FROM SALE WHERE S# IN(SELECT S# FROM SHOP WHERE SNAME=開開商店) AND G# IN(SELECT G# FROM GOODS WHERE PRICE>1000); (3)解:SELECT C.G#,GNAME,SUM(QUANTITY)AS SUM_QUANTITY, PRICE*SUM(QUANTITY)AS SUM_VALUE FROM SHOP A,SALE B,GOODS C WHERE A.S#=B.S# AND B.G#=C.G# AND AREA=EAST GROUP BY C.G#,GNAME; (注:SELECT子句中的屬性C.G#,GNAME應(yīng)在分組子句中出現(xiàn)) 2、設(shè)數(shù)據(jù)庫中有兩個(gè)基本表: 職工表 EMP(E#,ENAME,AGE,SALARY,D#), 其屬性分別表示職工工號(hào)、姓名、年齡、工資和工作部門的編號(hào)。 部門表 DEPT(D#,DNAME,MGR#), 其屬性分別表示部門編號(hào)、部門名稱和部門經(jīng)理的職工工號(hào)。 (1)試指出每個(gè)表的主鍵和外鍵。并寫出每個(gè)表創(chuàng)建語句中的外鍵子句。 (2)寫出下列查詢的關(guān)系代數(shù)表達(dá)式和SQL語句: 檢索每個(gè)部門經(jīng)理的工資,要求顯示其部門編號(hào)、部門名稱、經(jīng)理工號(hào)、經(jīng)理姓名和經(jīng)理工資。 (3) 建一個(gè)年齡大于50歲的職工視圖,屬性為(D#,DNAME,E#,ENAME,AGE,SALARY)。 答:(1)EMP表的主鍵為E#,外鍵為D#。 DEPT表的主鍵為D#,外鍵為MGR# 在EMP表的創(chuàng)建語句中,可寫一個(gè)外鍵子句: FOREIGN KEY D# REFERENCES DEPT(D#); 在DEPT表的創(chuàng)建語句中,可寫一個(gè)外鍵子句: FOREIGN KEY MGR# REFERENCES EMP(E#); MGR#=E# (2)關(guān)系表達(dá)式為:πDEPT.D#,DNAME,MGR#,ENAME,SALARY(DEPT ? EMP) SELECT語句為: SELECT DEPT.D#,DNAME,MGR#,ENAME,SALARY FROM DEPT,EMP WHERE MGR#=E#; (3)CREATE VIEW VIEW5 AS SELECT DEPT.D#,DNAME,E#,ENAME,AGE,SALARY FROM DEPT,EMP WHERE DEPT.D#=EMP.D# AND AGE>50; 3、 有圖書借閱管理的數(shù)據(jù)庫系統(tǒng),其數(shù)據(jù)庫關(guān)系模式(屬性只用英文字母)為: 學(xué)生(學(xué)號(hào),姓名,系別,專業(yè)) 主碼為:學(xué)號(hào) 圖書B(圖書編號(hào),圖書名,出版日期,出版社) 主碼為:圖書編號(hào) 借閱 R(學(xué)號(hào),圖書編號(hào),借閱日期) 主碼為:(學(xué)號(hào),圖書編號(hào)) 外碼有:學(xué)號(hào) 、圖書編號(hào) 請(qǐng)寫出完成下列操作的SQL語句 (1)創(chuàng)建借閱R表,要求指定其主碼和外碼 Create table 借閱(學(xué)號(hào) char(10) foreign key references 學(xué)生, 圖書編號(hào) char(10) foreign key references 圖書, 借閱日期 datetime ,primary key(學(xué)號(hào), 圖書編號(hào)) (2)向借閱表增加記錄(’20030101‘,‘tp201.01’, ‘2006/06/12‘)。 Insert into 借閱 values (’20030101’, ‘tp201.01’, ‘2006/06/12‘) (3)將圖書表的查詢權(quán)授給user用戶,并允許其轉(zhuǎn)授給其他人 Grant select on 圖書 to uset with grant option (4)、查詢借閱了“數(shù)據(jù)庫原理”一書的學(xué)生信息。 Select * from 學(xué)生 where學(xué)號(hào) in (select學(xué)號(hào) from 借閱 Where 圖書編號(hào) in select 圖書編號(hào) from 圖書 where 圖書名=’數(shù)據(jù)庫原理’ (5)、 查詢借閱了關(guān)于數(shù)據(jù)庫方面書籍的學(xué)生的學(xué)號(hào)、圖書名稱和出版社。 Select 學(xué)號(hào),圖書名,出版社 from 借閱 A, 圖書 B where A. 學(xué)號(hào)=B. 學(xué)號(hào) and 圖書名 like ‘%數(shù)據(jù)庫%’ (6)查詢2006年5月1日到2006年6月1日期間,圖書的借閱情況 Select * from 借閱 where 借閱日期 between ‘2006/05/01’ and ‘2006/06/01’ 4、設(shè)教學(xué)數(shù)據(jù)庫中有四個(gè)關(guān)系: 教師(教師編號(hào),教師姓名,聯(lián)系電話) 課程(課程號(hào),課程名,教師編號(hào)) 學(xué)生(學(xué)號(hào),學(xué)生姓名,年齡,性別,專業(yè)) 選課(學(xué)號(hào),課程號(hào),成績(jī)) (1)創(chuàng)建學(xué)生表和選課表,要求:指定每個(gè)表的主關(guān)鍵字、外部關(guān)鍵字和check約束。 (2)將所有學(xué)生的“高等數(shù)學(xué)”課程的成績(jī)?cè)黾?0分。 Update選課 set成績(jī)=成績(jī)+10 where課程號(hào)in ( select課程號(hào) from 課程 where課程名=’高等數(shù)學(xué)’ (3)將課程表的查詢和修改權(quán)限授給teacher用戶,同時(shí)允許轉(zhuǎn)授給其它用戶。 Grant select,update on 課程 to teacher with grant option (4)查詢男生所學(xué)課程的課程號(hào)和課程名。 Selec 課程號(hào),課程名 FROM 學(xué)生,選課,課程 Where學(xué)生.學(xué)號(hào)=選課.學(xué)號(hào) and 選課.課程號(hào)=課程.課程號(hào) and 性別=’男’ 或Selec 課程號(hào),課程名 FROM 課程 where課程號(hào) in ( Select 課程號(hào) from 選課 where 學(xué)號(hào) in ( Select學(xué)號(hào) from 學(xué)生 where 性別=’男’)) (5)查詢所有姓王的教師所授課程的課程號(hào)和成績(jī)(按課程號(hào)排序)。 Select 選課.課程號(hào), 成績(jī) from 教師,課程,選課 where 教師姓名like ‘王%’ And 教師.教師編號(hào)=課程.教師編號(hào) and 課程.課程號(hào)=選課.課程號(hào) order by 課程號(hào) (6)統(tǒng)計(jì)每門課程的學(xué)生選修人數(shù)(超過10人的課程才統(tǒng)計(jì))。要求顯示課程號(hào)和人 數(shù),查詢結(jié)果按人數(shù)降序排列。 Select 課程號(hào) ,count(學(xué)號(hào)) 人數(shù) from 選課 group by課程號(hào) having count(*)>10 order by 人數(shù) desc (7) 檢索所有姓“李”的學(xué)生的姓名和年齡 Select 學(xué)生姓名,年齡 from 學(xué)生 where 學(xué)生姓名 like ‘李%’ (8)求男生的最高成績(jī) Select max(成績(jī)) from 選課 where 學(xué)號(hào) in (select 學(xué)號(hào) from 學(xué)生 Where 性別=’男’) 5、已知有關(guān)系:倉庫(倉庫號(hào),城市,面積) 職工(倉庫號(hào),職工號(hào),工資) 訂購單(職工號(hào),供應(yīng)商號(hào),訂購單號(hào),訂購日期) 供應(yīng)商(供應(yīng)商號(hào),供應(yīng)商名,地址) (1)創(chuàng)建訂購單表,要求:數(shù)據(jù)類型及長(zhǎng)度自定義,并指定其主碼和外碼 Create table 訂購單表(職工號(hào) char(10) foreign key references職工,供應(yīng)商號(hào) char(10) foreign key references供應(yīng)商, 訂購單號(hào) char(10) primary key, 訂購日期 datetime) (2)修改職工表,增加一個(gè)職工名(可變長(zhǎng)字符型,最長(zhǎng)為20)字段 Alter 職工表 add 職工名 varchar(20) (3)向訂購單表中增加一條記錄,記錄值為: (’ZG0001’,‘GY0001’, ‘DD0001’,‘2006/06/12’) Insert into 訂購單表 values (’ZG0001‘,‘GY0001’, ‘DD0001’,‘2006/06/12’) (4)給低于所有職工平均工資的職工提高10%的工資。 UPDATE 職工 SET 工資=工資*1.1 WHERE 工資< (SELECT AVG(工資) FROM 職工) (5)刪除所有目前沒有任何訂購單的供應(yīng)商。 DELETE FROM 供應(yīng)商 WHERE 供應(yīng)商號(hào) NOT IN (SELECT 供應(yīng)商號(hào) FROM 訂購單) (6)將職工表的查詢權(quán)授給USER用戶,并允許其轉(zhuǎn)授給其他人 Grant select on職工表 to USER with grant option (7)檢索出向供應(yīng)商S3發(fā)過訂購單的職工的職工號(hào)和倉庫號(hào)。 SELECT 職工號(hào),倉庫號(hào) FROM 職工 WHERE 職工號(hào) IN ( SELECT 職工號(hào) FROM 訂購單 WHERE 供應(yīng)商號(hào)=’S3’ ) (8)檢索出目前沒有任何訂購單的供應(yīng)商信息。 SELECT * FROM 供應(yīng)商 WHERE NOT EXISTS ( SELECT * FROM 訂購單 WHERE 供應(yīng)商號(hào)=供應(yīng)商.供應(yīng)商號(hào) ) (9)檢索出和職工E1、E3都有聯(lián)系的北京的供應(yīng)商信息。 SELECT * FROM 供應(yīng)商 WHERE 供應(yīng)商號(hào) IN ( SELECT 供應(yīng)商號(hào) FROM 訂購單 WHERE 職工號(hào)=’E1’ ) AND 供應(yīng)商號(hào) IN ( SELECT 供應(yīng)商號(hào) FROM 訂購單 WHERE 職工號(hào)=’E3’ ) (10)檢索出目前和華通電子公司有業(yè)務(wù)聯(lián)系的每個(gè)職工的工資。 SELECT 職工號(hào),工資 FROM 職工 WHERE 職工號(hào) IN (SELECT 職工號(hào) FROM 訂購單 WHERE 供應(yīng)商號(hào) IN (SELECT 供應(yīng)商號(hào) FROM 供應(yīng)商 WHERE 供應(yīng)商名=’華通電子公司’)) (11) 檢索出與工資在1220元以下的職工沒有聯(lián)系的供應(yīng)商的名稱。 SELECT 供應(yīng)商名 FROM 供應(yīng)商 WHERE 供應(yīng)商號(hào) IN (SELECT 供應(yīng)商號(hào) FROM 訂購單 WHERE 職工號(hào) NOT IN (SELECT 職工號(hào) FROM 職工 WHERE 工資 < 1220)) (12) 檢索出向S4供應(yīng)商發(fā)出訂購單的倉庫所在的城市。 SELECT 城市 FROM 倉庫 WHERE 倉庫號(hào) IN (SELECT 倉庫號(hào) FROM 職工 WHERE 職工號(hào) IN (SELECT 職工號(hào) FROM 訂購單 WHERE 供應(yīng)商號(hào)=’S4’)) (13)檢索出在上海工作并且向S6供應(yīng)商發(fā)出了訂購單的職工號(hào)。 SELECT 職工號(hào) FROM 職工 WHERE 倉庫號(hào) IN (SELECT 倉庫號(hào) FROM 倉庫 WHERE 城市=’上?!? AND 職工號(hào) IN (SELECT 職工號(hào) FROM 訂購單 WHERE 供應(yīng)商號(hào)=’S6’)) (14)檢索出在廣州工作并且只向S6供應(yīng)商發(fā)出了訂購單的職工號(hào)。 SELECT 職工號(hào) FROM 職工 WHERE 倉庫號(hào) IN (SELECT 倉庫號(hào) FROM 倉庫 WHERE 城市=’廣州’) AND 職工號(hào) IN (SELECT 職工號(hào) FROM 訂購單 WHERE 供應(yīng)商號(hào)=’S6’) AND 職工號(hào) NOT IN (SELECT 職工號(hào) FROM 訂購單 WHERE 供應(yīng)商號(hào)!=’S6’) (15)檢索出由工資多于1230元的職工向北京的供應(yīng)商發(fā)出的訂購單號(hào)。 SELECT 訂購單號(hào) FROM 訂購單 WHERE 職工號(hào) IN (SELECT 職工號(hào) FROM 職工 WHERE 工資>1230) AND 供應(yīng)商號(hào) IN (SELECT 供應(yīng)商號(hào) FROM 供應(yīng)商 WHERE 地址=’北京’) (16)檢索出有最大面積的倉庫信息。 SELECT * FROM 倉庫 WHERE 面積=(SELECT MAX(面積) FROM 倉庫) (17)檢索出向S4供應(yīng)商發(fā)出訂購單的那些倉庫的平均面積。 SELECT AVG(面積) FROM 倉庫 WHERE 倉庫號(hào) IN (SELECT 倉庫號(hào) FROM 職工 WHERE 職工號(hào) IN (SELECT 職工號(hào) FROM 訂購單 WHERE 供應(yīng)商號(hào)=’S4’)) (18)檢索出每個(gè)城市的供應(yīng)商個(gè)數(shù)。 SELECT 地址,COUNT(*) FROM 供應(yīng)商 GROUP BY 地址 (19)檢索出和面積最小的倉庫有聯(lián)系的供應(yīng)商的個(gè)數(shù)。 SELECT COUNT(*) FROM 供應(yīng)商 WHERE 供應(yīng)商號(hào) IN (SELECT 供應(yīng)商號(hào) FROM 訂購單 WHERE 職工號(hào) IN (SELECT 職工號(hào) FROM 職工 WHERE 倉庫號(hào) IN (SELECT 倉庫號(hào) FROM 倉庫 WHERE 面積= (SELECT MIN(面積) FROM 倉庫)))) (20)插入一個(gè)新的供應(yīng)商元組(S9,智通公司,沈陽)。 INSERT INTO 供應(yīng)商 VALUES(‘S9’,’智通公司’,’沈陽’) (21)刪除由在上海倉庫工作的職工發(fā)出的所有訂購單。 DELETE FROM 訂購單 WHERE 職工號(hào) IN (SELECT 職工號(hào) FROM 職工 WHERE 倉庫號(hào) IN (SELECT 倉庫號(hào) FROM 倉庫 WHERE 城市=’上海’)- 1.請(qǐng)仔細(xì)閱讀文檔,確保文檔完整性,對(duì)于不預(yù)覽、不比對(duì)內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會(huì)出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請(qǐng)點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
5 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對(duì)作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 數(shù)據(jù)庫 練習(xí)題答案 練習(xí)題 答案
鏈接地址:http://kudomayuko.com/p-12782130.html