數(shù)據(jù)庫(kù)原理和應(yīng)用復(fù)習(xí)題和答案_第1頁(yè)
數(shù)據(jù)庫(kù)原理和應(yīng)用復(fù)習(xí)題和答案_第2頁(yè)
數(shù)據(jù)庫(kù)原理和應(yīng)用復(fù)習(xí)題和答案_第3頁(yè)
數(shù)據(jù)庫(kù)原理和應(yīng)用復(fù)習(xí)題和答案_第4頁(yè)
數(shù)據(jù)庫(kù)原理和應(yīng)用復(fù)習(xí)題和答案_第5頁(yè)
已閱讀5頁(yè),還剩13頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、 數(shù)據(jù)庫(kù)原理及應(yīng)用復(fù)習(xí)題填空題1. 事務(wù)的ACID特性指的是:原子性、一致性、隔離性和持久性。2. 實(shí)體-聯(lián)系模型的基本要素是:實(shí)體、聯(lián)系、屬性。3. 目前最常用的數(shù)據(jù)模型有:層次、網(wǎng)狀、關(guān)系。4. 數(shù)據(jù)管理技術(shù)的發(fā)展主要經(jīng)歷了以下三個(gè)階段:人工管理、文件系統(tǒng)、數(shù)據(jù)庫(kù)系統(tǒng)。5. 關(guān)系的三類完整性約束 :實(shí)體完整性、參照完整性、用戶定義完整性。 6. 關(guān)系模型由三部分組成:數(shù)據(jù)結(jié)構(gòu)、操作與完整性約束、存儲(chǔ)結(jié)構(gòu)。7. 各分E-R圖之間的沖突主要有3類:屬性沖突、命名沖突、結(jié)構(gòu)沖突。8. 模式分解等價(jià)的標(biāo)準(zhǔn)有: 分解具有無(wú)損連接性、分解要保持函數(shù)依賴、分解既要保持函數(shù)依賴,又要具有無(wú)損連接性。 9.

2、 數(shù)據(jù)字典通常包括數(shù)據(jù)項(xiàng)、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)流、數(shù)據(jù)存儲(chǔ)和處理過(guò)程五個(gè)部分。10. DBMS的功能應(yīng)包括下面幾類:數(shù)據(jù)定義功能、數(shù)據(jù)操縱功能、數(shù)據(jù)庫(kù)運(yùn)行管理功能、數(shù)據(jù)庫(kù)的建立和維護(hù)功能、數(shù)據(jù)通信功能。單項(xiàng)選擇題1. 現(xiàn)在采用的概念模型主要是(A)。A.實(shí)體-聯(lián)系模型B.結(jié)構(gòu)模型C.數(shù)據(jù)模型D.抽象模型2. 數(shù)據(jù)字典通常包括(D)A數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu)B數(shù)據(jù)流和數(shù)據(jù)存儲(chǔ)C處理過(guò)程DABC均正確。3. 完整性約束條件作用的對(duì)象層次有:(D)A列級(jí) B元組級(jí) C關(guān)系層 D.ABC均正確 4. SQL語(yǔ)言中,條件“年齡 BETWEEN 20 AND 30”表示年齡在20至30之間,且(A)。  &#

3、160;A.包括20歲和30歲   B. 不包括20歲和30歲    C.包括20歲但不包括30歲   D. 包括30歲但不包括20歲5. SQL語(yǔ)言具有(B)的功能  A.關(guān)系規(guī)范化、數(shù)據(jù)操縱、數(shù)據(jù)控制臺(tái)  B.數(shù)據(jù)定義、數(shù)據(jù)操縱、數(shù)據(jù)控制  C.數(shù)據(jù)定義、關(guān)系規(guī)范化、數(shù)據(jù)控制  D.數(shù)據(jù)定義、關(guān)系規(guī)范化、數(shù)據(jù)操縱6. 語(yǔ)句SELET COUNT(*) FROM human返回(A)行。   A.1    B.2

4、  C.3   D.4 7. 在SQL語(yǔ)言中,子查詢是(D)。  A.返回單表中數(shù)據(jù)子集的查詢語(yǔ)句   B.選取多表中字段子集的查詢語(yǔ)句  C.選取單表中字段子集的查詢語(yǔ)句   D.嵌入到另一個(gè)查詢語(yǔ)句之中的查詢語(yǔ)句8. 假設(shè)數(shù)據(jù)表 “test1” 中有 10 條數(shù)據(jù)行,可獲得最前面兩條數(shù)據(jù)行的命令為(B)A.SELECT 2 * FROM test1B.SELECT TOP 2 * FROM test1C.SELECT PERCENT 2 * FROM test 

5、D.SELECT PERCENT 20 * FROM test19. 并發(fā)操作不會(huì)帶來(lái)的問(wèn)題:(B)A丟失更新B可重復(fù)讀C未提交讀D幻象讀10. 有兩種錯(cuò)誤可能造成事務(wù)執(zhí)行失?。海–)A 邏輯錯(cuò)誤和數(shù)據(jù)錯(cuò)誤 B.系統(tǒng)錯(cuò)誤和數(shù)據(jù)錯(cuò)誤C邏輯錯(cuò)誤和系統(tǒng)錯(cuò)誤 D.均不正確11. 是用(B)來(lái)表示數(shù)據(jù)之間的聯(lián)系。A. 圖結(jié)構(gòu)B.二維表C. 樹結(jié)構(gòu)D.鏈表12. 關(guān)系操作的特點(diǎn)是:(B)A單一數(shù)據(jù)操作方式 B集合操作方式C數(shù)組操作方式D隊(duì)列操作方式13. 設(shè)關(guān)系R和S的元組個(gè)數(shù)分別為100和300,關(guān)系T是R與S的笛卡兒積,則T的元組個(gè)數(shù)是:(C) A400 B10000 C30000 D9000014.

6、 SQL語(yǔ)言集數(shù)據(jù)查詢、數(shù)據(jù)操作、數(shù)據(jù)定義、和數(shù)據(jù)控制功能于一體,語(yǔ)句INSERT、DELETE、UPDATE實(shí)現(xiàn)下列哪類功能:(B) A數(shù)據(jù)查詢 B數(shù)據(jù)操縱 C數(shù)據(jù)定義 D數(shù)據(jù)控制15. 在SQL語(yǔ)言的SELECT語(yǔ)句中,能實(shí)現(xiàn)投影操作的是:(A)ASELECT BFROM CWHERE DGROUP BY16. 在關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)中,為了簡(jiǎn)化用戶的查詢操作,而又不增加數(shù)據(jù)的存儲(chǔ)空間,常用的方法是創(chuàng)建:(C)A另一個(gè)表B游標(biāo)C視圖D索引17. 不屬于實(shí)體完整性的是:(A)Acheck約束B唯一性約束C主鍵約束D非空約束18. 用于數(shù)據(jù)庫(kù)恢復(fù)的重要文件是(A)A、數(shù)據(jù)庫(kù)文件 B、索引文件C、日志

7、文件 D、數(shù)據(jù)文件19. SQL Server 2000中事務(wù)的類型有(A)A、系統(tǒng)、用戶定義的事務(wù) B、分布式事務(wù)C、數(shù)據(jù)庫(kù)事務(wù) D、其他事務(wù)20. 下面字符串能與通配符表達(dá)式abca進(jìn)行匹配的是:(C)。A、bcdef B、a_bcd C、abc_a D、aa21. SQL Server2000中取當(dāng)前時(shí)間的函數(shù)是(B) A.DATA()B.GETDATE()C.NOW()D.CURRENTTIME()22. 數(shù)據(jù)恢復(fù)的幾種方式中損失最小的是:(A)A崩潰恢復(fù)B版本恢復(fù)C前滾恢復(fù)D均不正確23. 設(shè)置參照完整性是為了保證數(shù)據(jù)表之間的數(shù)據(jù)保持一致,通過(guò)在兩個(gè)數(shù)據(jù)表的(D)之間建立外鍵約束來(lái)實(shí)

8、現(xiàn)。A.主鍵和外鍵 B.唯一鍵和外鍵C.主鍵和唯一鍵D.A和B均正確24. 關(guān)系可以分為三種類型,不屬于這三種類型的是:(D)A基本關(guān)系B查詢表C視圖表D存儲(chǔ)過(guò)程25. 就查找速度而言,以下哪種索引最佳(A)A.聚集索引B.非聚集索引C.唯一索引D.以上均不正確26. 函數(shù)SUBSTRING(CONVERT(CHAR(33),GETDATE(),112),3,2)執(zhí)行的結(jié)果是(A)A.12(2012年) B.20 C.09D.0027. SQL Server 2000中的數(shù)據(jù)庫(kù)文件組分為(A)A.主文件組和用戶定義文件組B.主文件組和輔文件組C.主文件組和事務(wù)文件組D.以上均不正確28. SQ

9、L Server 2000中,根據(jù)文件的功能劃分,可分為(D)兩大類。A.數(shù)據(jù)庫(kù)文件和腳本文件B.事務(wù)日志文件和mdf文件C.mdf文件和ndf文件D.數(shù)據(jù)文件和事務(wù)日志文件29. 下面僅存在于服務(wù)器端的組件是:(A)A、服務(wù)管理器 B、企業(yè)管理器C、查詢分析器 D、導(dǎo)入導(dǎo)出組件30. 數(shù)據(jù)庫(kù)中只存放視圖的 (B)。A、操作 B、定義 C、對(duì)應(yīng)的數(shù)據(jù) D、限制31. Select 語(yǔ)句中用來(lái)連接字符串的符號(hào)是(A) 。A、 “+” B、 “&” C、“|” D、“|”32. 兩個(gè)關(guān)系在沒(méi)有公共屬性時(shí),其自然連接操作表現(xiàn)為(B)A結(jié)果為空關(guān)系 B笛卡兒積操作C等值聯(lián)接操作 D無(wú)意義的操作

10、33. 數(shù)據(jù)流程圖(DFD)是用于描述結(jié)構(gòu)化方法中(C)階段的工具。A. 可行性分析 B. 程序設(shè)計(jì) C. 需求分析 D. 詳細(xì)設(shè)計(jì)34. 關(guān)系模型中,表示實(shí)體間N:M聯(lián)系是通過(guò)增加一個(gè)(A)。A. 關(guān)系實(shí)現(xiàn) B. 屬性實(shí)現(xiàn) C. 關(guān)系或一個(gè)屬性實(shí)現(xiàn) D.關(guān)系和一個(gè)屬性實(shí)現(xiàn)35. 為提高效率,關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)必須進(jìn)行(B)處理。A.定義視圖 B.查詢優(yōu)化 C.數(shù)據(jù)恢復(fù) D.數(shù)據(jù)規(guī)范化到最高范式36. 在基本的關(guān)系中,下列說(shuō)法正確的是(C)A行列順序有關(guān)B屬性名允許重名C任意兩個(gè)元組不允許重復(fù) D列是非同質(zhì)的37. 一個(gè)數(shù)據(jù)庫(kù)系統(tǒng)必須能夠表示實(shí)體和關(guān)系,聯(lián)系可以與(C)實(shí)體有關(guān)。 A. 0個(gè) B.

11、 1個(gè) C. 1個(gè)或1個(gè)以上 D. 2個(gè)或2個(gè)以上38. 若數(shù)據(jù)庫(kù)中只包含成功事務(wù)提交的結(jié)果,則此數(shù)據(jù)庫(kù)就稱為處于(B)狀態(tài)。 A. 安全 B. 一致 C. 完整 D. 正確判斷題1. 列是同質(zhì)的,即每一列中的分量來(lái)自同一域,是同一類型的數(shù)據(jù)。(T)2. 文件系統(tǒng)階段的數(shù)據(jù)處理的方式僅有批處理方式。(F)3. 數(shù)據(jù)庫(kù)的三級(jí)模式結(jié)構(gòu)有利于數(shù)據(jù)的安全保密。(T)4. 一個(gè)1:n聯(lián)系可以轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式,也可以與1端對(duì)應(yīng)的關(guān)系模式合并。(T)5. BETWEEN AND 語(yǔ)句是定義的是一個(gè)開區(qū)間(F)6. 利用一級(jí)封鎖協(xié)議可以防止丟失更新問(wèn)題的發(fā)生。(T)7. 事務(wù)執(zhí)行過(guò)程中,若有某個(gè)修改操

12、作失敗,則事務(wù)仍可以成功提交 。(F)8. 從三個(gè)級(jí)別來(lái)對(duì)sql server的安全性進(jìn)行控制來(lái)看,分別是數(shù)據(jù)庫(kù)服務(wù)器、數(shù)據(jù)庫(kù)和數(shù)據(jù)庫(kù)對(duì)象。(T)9. 大多數(shù)數(shù)據(jù)庫(kù)對(duì)象的命名采用模式名加對(duì)象名的命名規(guī)則,即對(duì)象名.模式名。(F)10. SQL SERVER不能通過(guò)windows用戶登錄(F)11. 串行調(diào)度的結(jié)果不一定總是正確的。(F)12. 相對(duì)表而言,視圖沒(méi)有自己的數(shù)據(jù)。(T)13. 具有IDENTITY屬性的字段需要人工手動(dòng)賦值。(F)14. 執(zhí)行系統(tǒng)存儲(chǔ)過(guò)程時(shí),在其名稱前可以省略EXEC。(F)15. SQL Server 2000中使用差異備份和事務(wù)日志備份即可完全恢復(fù)數(shù)據(jù)庫(kù)。(T)

13、16. DBMS的主要職責(zé)就是有效地實(shí)現(xiàn)數(shù)據(jù)庫(kù)三級(jí)之間的轉(zhuǎn)換,即把用戶(或應(yīng)用程序)對(duì)數(shù)據(jù)庫(kù)的一次訪問(wèn),從用戶級(jí)帶到概念級(jí),再導(dǎo)向物理級(jí)。(T)17. ODBC可以無(wú)條件訪問(wèn)各種異構(gòu)數(shù)據(jù)庫(kù)。(F)18. 默認(rèn)約束的默認(rèn)值可以是常量。(T)19. 一個(gè)1:l聯(lián)系可以轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式,也可以與任意一端對(duì)應(yīng)的關(guān)系模式合并(F)20. 二級(jí)封鎖協(xié)議能防止丟失更新、讀未提交數(shù)據(jù)和不可重復(fù)讀。(T)21. UNIQUE約束的列不允許為空(T)22. 實(shí)體完整性又稱為行的完整性,要求表中有一個(gè)主鍵,其值不能為空且能唯一地標(biāo)識(shí)對(duì)應(yīng)的記錄。(T)23. 現(xiàn)實(shí)世界中的實(shí)體具有可區(qū)分性,不具有唯一性。(T)

14、24. 可在同一臺(tái)計(jì)算機(jī)上安裝多個(gè)SQL Server實(shí)例。(T)25. SQL Server 2000中數(shù)據(jù)庫(kù)一旦建立只能增大,不能縮小。(F)26. SQL語(yǔ)言不是一種標(biāo)準(zhǔn)而是一種商業(yè)產(chǎn)品。(F)27. 聚集索引中數(shù)據(jù)的物理排列順序和邏輯順序不一致。(F)28. 變量可以通過(guò)SELECT語(yǔ)句賦值 (T)29. 兩個(gè)查詢語(yǔ)句除了連接方式不同,其他元素都相同,則通過(guò)內(nèi)連接的獲得的查詢記錄數(shù)大于或等于通過(guò)外連接獲得的查詢記錄數(shù)。(F)名詞解釋題1. 關(guān)系模式:關(guān)系的描述稱為關(guān)系模式, 可以用R(U, D, dom, F)來(lái)表示, 其中R為關(guān)系名,U為組成該關(guān)系的屬性名集合,D為屬性組U中屬性所來(lái)

15、自的域,dom為屬性向域的映象集合,F(xiàn)為屬性間數(shù)據(jù)的依賴關(guān)系集合。2. 函數(shù)依賴:關(guān)系中一個(gè)或一組屬性的值可以決定其它屬性的值。3. 模式/內(nèi)模式映像:數(shù)據(jù)庫(kù)中不僅只有一個(gè)模式,而且也只有一個(gè)內(nèi)模式,所以模式/內(nèi)模式映像是唯一的,由它定義數(shù)據(jù)庫(kù)全局邏輯結(jié)構(gòu)與存儲(chǔ)結(jié)構(gòu)之間的對(duì)應(yīng)關(guān)系。模式/內(nèi)模式映像定義通常包含在模式描述中。當(dāng)數(shù)據(jù)庫(kù)的存儲(chǔ)設(shè)備和存儲(chǔ)方法發(fā)生變化時(shí),數(shù)據(jù)庫(kù)管理員對(duì)模式/內(nèi)模式映像要做相應(yīng)的改變,使模式保持不變,從而應(yīng)用程序也不變,保證了數(shù)據(jù)與程序的物理獨(dú)立性,簡(jiǎn)稱為數(shù)據(jù)的物理獨(dú)立性4. 數(shù)據(jù)庫(kù)的外延:關(guān)系數(shù)據(jù)庫(kù)的值是某一時(shí)刻關(guān)系的集合,稱作數(shù)據(jù)庫(kù)的外延5. 非平凡函數(shù)依賴 當(dāng)關(guān)系中

16、屬性集合Y不是屬性集合X的子集時(shí),存在函數(shù)依賴XY,則稱這種函數(shù)依賴為非平凡函數(shù)依賴。按要求編寫SQL腳本第一套1. 設(shè)有一學(xué)籍管理系統(tǒng),其數(shù)據(jù)庫(kù)名為“EDUC”,初始大小為 10MB,最大為50MB,數(shù)據(jù)庫(kù)自動(dòng)增長(zhǎng),增長(zhǎng)方式是按5比例增長(zhǎng);日志文件初始為2MB,最大可增長(zhǎng)到5MB,按1MB增長(zhǎng)。數(shù)據(jù)庫(kù)的邏輯文件名為“student_data”, 物理文件名為“student_data.mdf,存放路徑為“E:sql_data”。日志文件的邏輯文件名為“student_log”, 物理文件名為“student_log.ldf”,存放路徑為“E:sql_data”按照題目要求寫出創(chuàng)建該數(shù)據(jù)庫(kù)的腳

17、本。CREATE DATABASE EDUCON(NAME='student_data',="e:sql_datastudent.mdf",SIZE=10MB,MAXSIZE=50MB,=5%)LOG ON(NAME='student_log',="e:sql_datastudent_log.ldf",SIZE=2MB,MAXSIZE=5MB,=1MB)GO2. 列表的結(jié)構(gòu):表2.1 student表(學(xué)生信息表)字段名稱類 型寬 度允許空值主 鍵說(shuō) 明snochar8NOT NULL是學(xué)生學(xué)號(hào)snamechar8NOT

18、NULL學(xué)生姓名sexchar2NULL學(xué)生性別,只能取值男或女birthdaysmalldate4NULL學(xué)生出生日期spnochar8NULL專業(yè)代碼(外鍵)entimesmalldate4NULL學(xué)生入校時(shí)間表2.2 course表(課程信息表)字段名稱類 型寬 度允許空值主 鍵說(shuō) 明cnochar10NOT NULL是課程編號(hào)spnochar8NULL專業(yè)代碼(外鍵)cnamechar20NOT NULL課程名稱表2.3 student_course表(學(xué)生選課成績(jī)表)字段名稱類 型寬 度允許空值主 鍵說(shuō) 明snochar8NOT NULL是學(xué)生學(xué)號(hào)cnochar10NOT NULL是

19、上課編號(hào)scoreintNULL學(xué)生成績(jī)表2.4 department表(專業(yè)信息表)字段名稱類 型寬 度允許空值主 鍵說(shuō) 明Spnochar8Not null是專業(yè)代碼Spnamechar20Null專業(yè)名稱 編寫sql腳本創(chuàng)建下列對(duì)象和查詢(1) student表(學(xué)生信息表)course表(課程信息表)CREATE TABLE student(sno CHAR(8) PRIMARY KEY,sname CHAR(8) NOT NULL,sex CHAR(2) NOT NULL CHECK(sex in ('男','女'),birthday SMALLDAT

20、ETIME,spno CHAR(8) REFERENCES department(Spno),entime SMALLDATETIME)GoCREATE TABLE course(cno CHAR(10) PRIMARY KEY,spno CHAR(8) REFERENCES department(Spno),cname CHAR(20) NOT NULL)Go(2) student_course表(學(xué)生選課成績(jī)表)department表(專業(yè)信息表)CREATE TABLE s.tudent_course(sno CHAR(8) NOT NULL,cno CHAR(10) NOT NULL,

21、score INT,PRIMARY KEY(sno, cno)GOCREATE TABLE department(Spno CHAR(8) PRIMARY KEY,Spname CHAR(20)GO(3) 將各系學(xué)生人數(shù),平均年齡定義為視圖V_NUM_AVG將各位學(xué)生選修課程的門數(shù)及平均成績(jī)定義為視圖V_AVG_S_GCREATE VIEW V_NUM_AVG(學(xué)生人數(shù),平均年齡)ASSELECT COUNT(sno), AVG(DATEDIFF(yy,birthday,getdate()FROM student GOCREATE VIEW V_AVG_S_G(學(xué)號(hào),選修課程門數(shù),平均成績(jī))A

22、SSELECT sno, COUNT(cno), AVG(score) FROM student_courseGROUP BY snoGO(4) 在student_course表的sno(升序), cno(升序)和score(降序)三列上建立一個(gè)普通索引IX_SC。CREATE INDEX IX_SCON student_course(sno ASC,cno ASC,score DESC)(5) 在course表的cname列上建立唯一索引IX_C。CREATE UNIQUE INDEX IX_C ON course(cname)(6) 求計(jì)算機(jī)系和數(shù)學(xué)系的姓張的學(xué)生的信息;SELECT st

23、udent.* FROM student,departmentWHERE department.Spno=student.spno AND student.sname LIKE '張%' AND (Spname='計(jì)算機(jī)系' OR Spname='數(shù)學(xué)系')3. 下表內(nèi)容完成題目要求:(表的名字為:商品表)編號(hào) 商品名 單價(jià) 數(shù)量 狀態(tài)001 電視機(jī) 1200 5 0002 洗衣機(jī) 1650 13 0003 空調(diào) 5600 8 1004 自行車 180 43 1005 電視機(jī) 2580 18 1006 洗衣機(jī) 3600 23 0(1) 查詢表中所

24、有的數(shù)據(jù)行。SELECT * FROM 商品表(2) 查詢表中前兩行數(shù)據(jù)。SELECT TOP 2 * FROM 商品表(3) 顯示表中商品名和單價(jià),并去掉重復(fù)行的數(shù)據(jù)。SELECT DISTINCT 商品名,單價(jià) FROM 商品表(4) 查看表中數(shù)量低于10的商品信息。SELECT * FROM 商品表 WHERE 數(shù)量<10(5) 查看表中價(jià)格最高的的商品名。SELECT 商品名 FROM 商品表WHERE 單價(jià)=(SELECT MAX(單價(jià)) FROM 商品表)(6) 向表中添加一行數(shù)據(jù),其值為(007,電冰箱,4560,56)INSERT INTO 商品表(編號(hào),商品名,單價(jià),數(shù)

25、量) VALUES('007','電冰箱',4560,56)(7) 更改表中的數(shù)據(jù),將自行車的單價(jià)改為280。UPDATE 商品表 SET 單價(jià)='280' WHERE 商品名='自行車'(8) 刪除表中商品名為電冰箱的數(shù)據(jù)行。DELETE FROM 商品表 WHERE 商品名='電冰箱'第二套 1. 在D:SQL路徑下的Book數(shù)據(jù)庫(kù),該數(shù)據(jù)庫(kù)的主數(shù)據(jù)文件邏輯名稱為Book_data,物理文件名為Book_data.mdf, 初始大小為4MB,最大尺寸為10MB,增長(zhǎng)速度為10%;數(shù)據(jù)庫(kù)的日志文件邏輯名稱為Boo

26、k_log,物理文件名為Book_log.ldf,初始大 小為1MB,最大尺寸為5MB,增長(zhǎng)速度為1MB。CREATE DATABASE BookON(NAME='Book_data','D:SQLBook_data.mdf',SIZE=4MB,MAXSIZE=10MB,)LOG ON(NAME='Book_log','D:SQLBook_log.ldf',SIZE=1MB,MAXSIZE=5MB,)GO2.(1) 依據(jù)圖1的內(nèi)容,創(chuàng)建“圖書信息表”。CREATE TABLE 圖書信息表(書號(hào) VARCHAR(10) PRIMAR

27、Y KEY,書名 VARCHAR(20) NOT NULL,作者 VARCHAR(20) NOT NULL,單價(jià) INT,庫(kù)存量 INT DEFAULT 10)(2) 向表中插入一行數(shù)據(jù),列值分別為:(1006,數(shù)據(jù)庫(kù)原理,王珊,高等教育出版社,25,20,null)INSERT INTO 圖書信息表(書號(hào),書名,作者,出版社,單價(jià),庫(kù)存量) VALUES('1006','數(shù)據(jù)庫(kù)原理','王珊','高等教育出版社',25,20,NULL)(3) 查看表中所有的數(shù)據(jù)行SELECT * FROM 圖書信息表(4) 顯示表中單價(jià)的最大值

28、SELECT MAX(單價(jià))最高價(jià) FROM 圖書信息表(5) 修改表中書名為多媒體技術(shù)的庫(kù)存量,使其庫(kù)存量為38UPDATE 圖書信息表 SET 庫(kù)存量=38 WHERE 書名='多媒體技術(shù)'(6) 根據(jù)表創(chuàng)建視圖AA,使該視圖包含書號(hào)、書名及單價(jià)CREATE VIEW AAASSELECT 書號(hào),書名,單價(jià) FROM 圖書信息表(7) 創(chuàng)建存儲(chǔ)過(guò)程xxx,使其完成如下功能:查詢表中高等教育出版社出版的圖書的數(shù)目。CREATE PROCEDURE xxx ASSELECT COUNT(*) FROM 圖書信息表 WHERE 出版社='高等教育出版社'(8) 執(zhí)

29、行第7小題中創(chuàng)建的存儲(chǔ)過(guò)程XXX。EXECUTE xxx(9) 刪除表中作者姓張的數(shù)據(jù)行DELETE FROM 圖書信息表 WHERE 作者 LIKE '張%'(10) 刪除該圖書表DROP TABLE 圖書信息表第三套 1. 設(shè)工程零件數(shù)據(jù)庫(kù)中有四個(gè)基本表:供應(yīng)商(供應(yīng)商代碼,姓名,所在城市,聯(lián)系電話);工程(工程代碼,工程名,負(fù)責(zé)人,預(yù)算);零件(零件代碼,零件名,規(guī)格,產(chǎn)地,顏色);供應(yīng)零件(供應(yīng)商代碼,工程代碼,零件代碼,數(shù)量)試用SQL語(yǔ)句完成下列操作:(1) 定義供應(yīng)商表、工程表、零件表和供應(yīng)零件表,并說(shuō)明其主碼和參照關(guān)系。CREATE TABLE 供應(yīng)商表(供應(yīng)商

30、代碼 VARCHAR(10) PRIMARY KEY,姓名 VARCHAR(10) NOT NULL,所在城市 VARCHAR(10) NOT NULL,聯(lián)系電話 CHAR(10) NOT NULL CHECK (LEN(聯(lián)系電話)=11)CREATE TABLE 工程表(工程代碼 VARCHAR(10) PRIMARY KEY,工程名 VARCHAR(10) NOT NULL,負(fù)責(zé)人 VARCHAR(10) NOT NULL,預(yù)算 INT NOT NULL)CREATE TABLE 零件表(零件代碼 VARCHAR(10) PRIMARY KEY,零件名 VARCHAR(10) NOT NU

31、LL,規(guī)格 VARCHAR(10) NOT NULL,產(chǎn)地 VARCHAR(10),顏色 VARCHAR(10)CREATE TABLE 供應(yīng)零件表(供應(yīng)商代碼 VARCHAR(10) NOT NULL REFERENCES 供應(yīng)商表(供應(yīng)商代碼),工程代碼 VARCHAR(10) NOT NULL REFERENCES 工程表(工程代碼),零件代碼 VARCHAR(10) NOT NULL REFERENCES 零件表(零件代碼),數(shù)量 INT,PRIMARY KEY(供應(yīng)商代碼,工程代碼,零件代碼),)(2) 找出天津市供應(yīng)商的姓名和電話。SELECT 姓名,聯(lián)系電話 FROM 供應(yīng)商表

32、WHERE 所在城市='天津市'(3) 查找預(yù)算在50000100000元之間的工程的信息,并將結(jié)果按預(yù)算降序排列。SELECT * FROM 工程表 WHERE 預(yù)算 BETWEEN 50000 AND 1000000 (4) 找出使用供應(yīng)商S1所供零件的工程號(hào)碼。SELECT 工程代碼 FROM 供應(yīng)零件表 WHERE 供應(yīng)商代碼='S1'(5) 將由供應(yīng)商S5供給工程代碼為J4的零件P6改為由S3供應(yīng),并作其他必要的修改。UPDATE 供應(yīng)零件表 SET 供應(yīng)商代碼='S3' WHERE 工程代碼='J4' AND 零件代碼

33、='P6' AND 供應(yīng)商代碼='S5'(6) 從供應(yīng)商關(guān)系中刪除S2的記錄,并從供應(yīng)零件關(guān)系中刪除相應(yīng)的記錄。DELETE FROM 供應(yīng)商表 WHERE 供應(yīng)商代碼='S2'DELETE FROM 供應(yīng)零件表 WHERE 供應(yīng)商代碼='S2'第四套 1. 問(wèn)題描述:本題用到下面三個(gè)關(guān)系表:CARD 借書卡。 CNO 卡號(hào),NAME姓名,CLASS 班級(jí)BOOKS圖書。 BNO 書號(hào),BNAME 書名,AUTHOR 作者,PRICE 單價(jià),QUANTITY 庫(kù)存冊(cè)數(shù)BORROW 借書記錄。 CNO 借書卡號(hào),BNO 書號(hào),RDA

34、TE 還書日期備注:限定每人每種書只能借一本;庫(kù)存冊(cè)數(shù)隨借書、還書而改變。要求實(shí)現(xiàn)如下15個(gè)處理:(1) 寫出建立BORROW表的SQL語(yǔ)句,要求定義主碼完整性約束和引用完整性約束。CREATE TABLE BORROW(CNO VARCHAR(10) NOT NULL REFERENCES CARD(CNO),BNO VARCHAR(10) NOT NULL REFERENCES BOOKS(BNO),RDATE DATETIME,PRIMARY KEY(CNO,BNO,RDATE)(2) 找出借書超過(guò)5本的讀者,輸出借書卡號(hào)及所借圖書冊(cè)數(shù)。SELECT CNO,COUNT(*) AS &#

35、39;所借圖書冊(cè)數(shù)' FROM BORROWGROUP BY CNO HAVING COUNT(*)>5(3) 查詢借閱了"水滸"一書的讀者,輸出姓名及班級(jí)。SELECT NAME,CLASS FROM CARDWHERE EXISTS(SELECT * FROM BORROW, BOOKSWHERE BORROW.BNO=BOOKS.BNO AND BORROW.CNO=CARD.CNO AND BOOKS.BNAME='水滸')(4) 查詢過(guò)期未還圖書,輸出借閱者(卡號(hào))、書號(hào)及還書日期。SELECT * FROM BORROW WHERE

36、 RDATE<GETDATE()(5) 查詢書名包括"網(wǎng)絡(luò)"關(guān)鍵詞的圖書,輸出書號(hào)、書名、作者。SELECT BNO,BNAME,AUTHOR FROM BOOKS WHERE BNAME LIKE '%網(wǎng)絡(luò)%'(6) 查詢現(xiàn)有圖書中價(jià)格最高的圖書,輸出書名及作者。SELECT BNAME,AUTHOR FROM BOOKSWHERE PRICE=(SELECT MAX(PRICE) FROM BOOKS)(7) 查詢當(dāng)前借了"計(jì)算方法"但沒(méi)有借"計(jì)算方法習(xí)題集"的讀者,輸出其借書卡號(hào),并按卡號(hào)降序排序輸出。SE

37、LECT b.CNO FROM BOOKS a,BORROW bWHERE a.BNO=b.BNO AND a.BNAME='計(jì)算方法' AND NOT EXISTS(SELECT * FROM BOOKS a1,BORROW b1 WHERE a1.BNO=b1.BNO AND a1.BNAME='計(jì)算方法習(xí)題集' AND b.CNO=b1.CNO)ORDER BY B.CNO DESC(8) 將"C01"班同學(xué)所借圖書的還期都延長(zhǎng)一周。UPDATE BORROW SET RDATE=DATEADD(DAY,7,RDATE) WHERE E

38、XISTS(SELECT * FROM CARD WHERE CLASS='C01')(9) 從BOOKS表中刪除當(dāng)前無(wú)人借閱的圖書記錄。DELETE FROM BOOKS WHERE NOT EXISTS(SELECT * FROM BORROW WHERE BOOKS.BNO=BORROW.BNO)(10) 如果經(jīng)常按書名查詢圖書信息,請(qǐng)建立合適的索引。CREATE INDEX IDX ON BOOKS(BNAME)2. 設(shè)職工-社團(tuán)數(shù)據(jù)庫(kù)有三個(gè)基本表:職工(職工號(hào),姓名,年齡,性別);社會(huì)團(tuán)體(編號(hào),名稱,負(fù)責(zé)人,活動(dòng)地點(diǎn));參加(職工號(hào),編號(hào),參加日期);其中:A)職工

39、表的主碼為職工號(hào)。B)社會(huì)團(tuán)體表的主碼為編號(hào);外碼為負(fù)責(zé)人,被參照表為職工表,對(duì)應(yīng)屬性為職工號(hào)。C)參加表的職工號(hào)和編號(hào)為主碼;職工號(hào)為外碼,其被參照表為職工表,對(duì)應(yīng)屬性為職工號(hào);編號(hào)為外碼,其被參照表為社會(huì)團(tuán)體表,對(duì)應(yīng)屬性為編號(hào)。試用SQL語(yǔ)句表達(dá)下列操作:(1) 定義職工表、社會(huì)團(tuán)體表和參加表,并說(shuō)明其主碼和參照關(guān)系。CREATE TABLE 職工表(職工號(hào) VARCHAR(10) PRIMARY KEY,姓名 VARCHAR(10) NOT NULL,年齡 VARCHAR(10) NOT NULL,性別 CHAR(2) NOT NULL CHECK(性別 in ('男','女'),)CREATE TABLE 社會(huì)團(tuán)體表(編號(hào) VARCHAR(10) PRIMARY KEY,名稱 VARCHAR(10) NOT NULL,負(fù)責(zé)人 VARCHAR(10) NOT NULL REFERENCES 職工表(職工號(hào)),活動(dòng)地點(diǎn) VARCHAR(10) NOT NULL,)CREATE TABLE 參加表(職工號(hào) VARCHAR(10) NOT NULL REFERENCES 職工表(職工號(hào)),編號(hào) VARCHAR(10) NOT NU

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論