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

下載本文檔

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

文檔簡介

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

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

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

4、  C.3   D.4 7. 在SQL語言中,子查詢是(D)。  A.返回單表中數(shù)據(jù)子集的查詢語句   B.選取多表中字段子集的查詢語句  C.選取單表中字段子集的查詢語句   D.嵌入到另一個查詢語句之中的查詢語句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ā)操作不會帶來的問題:(B)A丟失更新B可重復(fù)讀C未提交讀D幻象讀10. 有兩種錯誤可能造成事務(wù)執(zhí)行失?。海–)A 邏輯錯誤和數(shù)據(jù)錯誤 B.系統(tǒng)錯誤和數(shù)據(jù)錯誤C邏輯錯誤和系統(tǒng)錯誤 D.均不正確11. 是用(B)來表示數(shù)據(jù)之間的聯(lián)系。A. 圖結(jié)構(gòu)B.二維表C. 樹結(jié)構(gòu)D.鏈表12. 關(guān)系操作的特點是:(B)A單一數(shù)據(jù)操作方式 B集合操作方式C數(shù)組操作方式D隊列操作方式13. 設(shè)關(guān)系R和S的元組個數(shù)分別為100和300,關(guān)系T是R與S的笛卡兒積,則T的元組個數(shù)是:(C) A400 B10000 C30000 D9000014.

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

7、文件 D、數(shù)據(jù)文件19. SQL Server 2000中事務(wù)的類型有(A)A、系統(tǒng)、用戶定義的事務(wù) B、分布式事務(wù)C、數(shù)據(jù)庫事務(wù) D、其他事務(wù)20. 下面字符串能與通配符表達式abca進行匹配的是:(C)。A、bcdef B、a_bcd C、abc_a D、aa21. SQL Server2000中取當前時間的函數(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ù)保持一致,通過在兩個數(shù)據(jù)表的(D)之間建立外鍵約束來實

8、現(xiàn)。A.主鍵和外鍵 B.唯一鍵和外鍵C.主鍵和唯一鍵D.A和B均正確24. 關(guān)系可以分為三種類型,不屬于這三種類型的是:(D)A基本關(guān)系B查詢表C視圖表D存儲過程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ù)庫文件組分為(A)A.主文件組和用戶定義文件組B.主文件組和輔文件組C.主文件組和事務(wù)文件組D.以上均不正確28. SQ

9、L Server 2000中,根據(jù)文件的功能劃分,可分為(D)兩大類。A.數(shù)據(jù)庫文件和腳本文件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ù)庫中只存放視圖的 (B)。A、操作 B、定義 C、對應(yīng)的數(shù)據(jù) D、限制31. Select 語句中用來連接字符串的符號是(A) 。A、 “+” B、 “&” C、“|” D、“|”32. 兩個關(guān)系在沒有公共屬性時,其自然連接操作表現(xiàn)為(B)A結(jié)果為空關(guān)系 B笛卡兒積操作C等值聯(lián)接操作 D無意義的操作

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

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

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

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

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

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

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

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é)生信息表)字段名稱類 型寬 度允許空值主 鍵說 明snochar8NOT NULL是學(xué)生學(xué)號snamechar8NOT

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

19、上課編號scoreintNULL學(xué)生成績表2.4 department表(專業(yè)信息表)字段名稱類 型寬 度允許空值主 鍵說 明Spnochar8Not null是專業(yè)代碼Spnamechar20Null專業(yè)名稱 編寫sql腳本創(chuàng)建下列對象和查詢(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é)生選課成績表)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ù)及平均成績定義為視圖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é)號,選修課程門數(shù),平均成績)A

22、SSELECT sno, COUNT(cno), AVG(score) FROM student_courseGROUP BY snoGO(4) 在student_course表的sno(升序), cno(升序)和score(降序)三列上建立一個普通索引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) 求計算機系和數(shù)學(xué)系的姓張的學(xué)生的信息;SELECT st

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

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

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

26、k_log,物理文件名為Book_log.ldf,初始大 小為1MB,最大尺寸為5MB,增長速度為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 圖書信息表(書號 VARCHAR(10) PRIMAR

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

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

29、行第7小題中創(chuàng)建的存儲過程XXX。EXECUTE xxx(9) 刪除表中作者姓張的數(shù)據(jù)行DELETE FROM 圖書信息表 WHERE 作者 LIKE '張%'(10) 刪除該圖書表DROP TABLE 圖書信息表第三套 1. 設(shè)工程零件數(shù)據(jù)庫中有四個基本表:供應(yīng)商(供應(yīng)商代碼,姓名,所在城市,聯(lián)系電話);工程(工程代碼,工程名,負責(zé)人,預(yù)算);零件(零件代碼,零件名,規(guī)格,產(chǎn)地,顏色);供應(yīng)零件(供應(yīng)商代碼,工程代碼,零件代碼,數(shù)量)試用SQL語句完成下列操作:(1) 定義供應(yīng)商表、工程表、零件表和供應(yīng)零件表,并說明其主碼和參照關(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,負責(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所供零件的工程號碼。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. 問題描述:本題用到下面三個關(guān)系表:CARD 借書卡。 CNO 卡號,NAME姓名,CLASS 班級BOOKS圖書。 BNO 書號,BNAME 書名,AUTHOR 作者,PRICE 單價,QUANTITY 庫存冊數(shù)BORROW 借書記錄。 CNO 借書卡號,BNO 書號,RDA

34、TE 還書日期備注:限定每人每種書只能借一本;庫存冊數(shù)隨借書、還書而改變。要求實現(xiàn)如下15個處理:(1) 寫出建立BORROW表的SQL語句,要求定義主碼完整性約束和引用完整性約束。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) 找出借書超過5本的讀者,輸出借書卡號及所借圖書冊數(shù)。SELECT CNO,COUNT(*) AS &#

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

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

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

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

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

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論