數(shù)據(jù)庫原理復(fù)習(xí)20160420._第1頁
數(shù)據(jù)庫原理復(fù)習(xí)20160420._第2頁
數(shù)據(jù)庫原理復(fù)習(xí)20160420._第3頁
數(shù)據(jù)庫原理復(fù)習(xí)20160420._第4頁
數(shù)據(jù)庫原理復(fù)習(xí)20160420._第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、數(shù)據(jù)庫原理試題(A卷)一、單項選擇題(每小題1分,共10分)1.下列四項中,不屬于數(shù)據(jù)庫特點的是( )。A.數(shù)據(jù)共享 B.數(shù)據(jù)完整性C.數(shù)據(jù)冗余很高 D.數(shù)據(jù)獨立性高2.下列四項中,不屬于SQL2005實用程序的是( )。A.企業(yè)管理器 B.查詢分析器C.服務(wù)管理器 D.媒體播放器3.SQL Server安裝程序創(chuàng)建4個系統(tǒng)數(shù)據(jù)庫,下列哪個不是( )系統(tǒng)數(shù)據(jù)庫。A.master B.modelC.pub D.msdb4.( )是位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件,它屬于系統(tǒng)軟件,它為用戶或應(yīng)用程序提供訪問數(shù)據(jù)庫的方法。數(shù)據(jù)庫在建立、使用和維護時由其統(tǒng)一管理、統(tǒng)一控制。ADBMS BDBC

2、DBS DDBA5. 在SQL中,建立表用的命令是 ( )。A.CREATE SCHEMA B.CREATE TABLEC.CREATE VIEW D.CREATE INDEX6.SQL語言中,條件年齡 BETWEEN 15 AND 35表示年齡在15至35之間,且( )。A.包括15歲和35歲B.不包括15歲和35歲C.包括15歲但不包括35歲D.包括35歲但不包括15歲7.下列四項中,不正確的提法是( )。A.SQL語言是關(guān)系數(shù)據(jù)庫的國際標準語言B.SQL語言具有數(shù)據(jù)定義、查詢、操縱和控制功能C.SQL語言可以自動實現(xiàn)關(guān)系數(shù)據(jù)庫的規(guī)范化D.SQL語言稱為結(jié)構(gòu)查詢語言8.在MS SQL Se

3、rver中,用來顯示數(shù)據(jù)庫信息的系統(tǒng)存儲過程是( )。A. sp_dbhelp B. sp_dbC. sp_help D. sp_helpdb9.SQL語言中,刪除表中數(shù)據(jù)的命令是( )。A. DELETE B. DROPC. CLEAR D. REMOVE10.SQL的視圖是從( )中導(dǎo)出的。A. 基本表 B. 視圖 C. 基本表或視圖 D. 數(shù)據(jù)庫二、判斷題(每空1分,共10分)1.'在那遙遠的地方' 是SQL中的字符串常量嗎?T2.'11.9' 是SQL中的實型常量嗎 F3.select 16%4, 的執(zhí)行結(jié)果是: 4 嗎? F4.2005.11.09 是

4、SQL中的日期型常量嗎?F5.¥2005.89 是SQL中的貨幣型常量嗎?F6.select 25/2 的執(zhí)行結(jié)果是: 12.5 嗎?F7.'岳飛'>'文天祥' 比較運算的結(jié)果為真嗎?T8.一個表可以創(chuàng)建多個主鍵嗎?F9.創(chuàng)建唯一性索引的列可以有一些重復(fù)的值?F10.固定數(shù)據(jù)庫角色:db_datarader 的成員能修改本數(shù)據(jù)庫內(nèi)表中的數(shù)據(jù)嗎?F三、填空題(每空1分,共20分)1.數(shù)據(jù)庫系統(tǒng)具有數(shù)據(jù)的外模式、模式和內(nèi)模式三級模式結(jié)構(gòu)。2.SQL Server 2005局部變量名字必須以開頭,而全局變量名字必須以開頭。3.語句 select ascii(&#

5、39;D'), char(67) 的執(zhí)行結(jié)果是:_68_和_C_。4.語句 select lower('Beautiful') , rtrim('我心中的太陽 ') 的執(zhí)行結(jié)果是: beautiful和我心中的太陽。5.選擇運算是根據(jù)某些條件對關(guān)系做水平分割;投影是根據(jù)某些條件對關(guān)系做垂直分割。6.關(guān)系運算主要有選擇、投影和連接。7.完整性約束包括實體、完整性、域完整性、參照完整性和用戶定義完整性。8.在SQL Server 2005中,數(shù)據(jù)庫對象包括表、視圖、觸發(fā)器、過程、列、索引、約束、規(guī)則、默認和用戶自定義的數(shù)據(jù)類型等。9.語句 select da

6、y('2004-4-6'), len('我們快放假了.') 的執(zhí)行結(jié)果是:6、7。10.語句 select round(13.4321,2), round(13.4567,3)的執(zhí)行結(jié)果是:13.4300和13.4570四、簡答題(每小題5分,共10分)1.在SQL Server 2005中,使用視圖的好處是什么?(1) 為用戶集中需要的數(shù)據(jù),簡化了數(shù)據(jù)的用戶操作;(2) 對用戶隱藏了數(shù)據(jù)庫設(shè)計的復(fù)雜性;(3) 簡化用戶權(quán)限的管理 2.在SQL Server 2005中,用戶訪問表/視圖、列的權(quán)限是什么?(1)數(shù)據(jù)表/視圖(select insert updat

7、e delete)(2)列(字段)的訪問(select update)五、設(shè)計題(共50分) 現(xiàn)有關(guān)系數(shù)據(jù)庫如下: 數(shù)據(jù)庫名:我班同學(xué)數(shù)據(jù)庫同學(xué)表(學(xué)號 char(6),姓名,性別,年齡,民族,身份證號,宿舍號) 宿舍表(宿舍號 char(6),宿舍電話) 用SQL語言實現(xiàn)下列功能的sql語句代碼:1.創(chuàng)建數(shù)據(jù)庫我班同學(xué)數(shù)據(jù)庫代碼(2分)。create database 我班同學(xué)數(shù)據(jù)庫gouse 我班同學(xué)數(shù)據(jù)庫go2.創(chuàng)建數(shù)據(jù)表宿舍表代碼(3分); 宿舍表(宿舍號 char(6),宿舍電話) 要求使用:主鍵(宿舍號)、宿舍電話:以633開頭的7位電話號碼create table 宿舍表(宿舍號

8、 char(6) primary key,宿舍電話 char(7) check(宿舍電話 like '6330-90-90-90-9')3.創(chuàng)建數(shù)據(jù)表同學(xué)表代碼(6分); 同學(xué)表(學(xué)號 char(6),姓名,性別,年齡,民族,身份證號,宿舍號) 要求使用:主鍵(學(xué)號)、外鍵(宿舍號)、默認(民族)、非空(民族,姓名,年齡)、唯一(身份證號)、檢查(性別)create table 同學(xué)表(學(xué)號 char(6) primary key,姓名 nchar(4) not null,性別 nchar(1) check(性別 in ('男', '女'),年齡

9、 int ,民族 nchar(8) default '漢族' not null,身份證號 char(18) unique,宿舍號 char(6) references 宿舍表(宿舍號)4.將下列宿舍信息添加到宿舍表的代碼(8分) 宿舍號 宿舍電話 101 6331157 102 6331777 修改 宿舍號為101的 宿舍電話:6331158 刪除 宿舍號為102的 宿舍信息insert 宿舍表 values('101', '6331157')insert 宿舍表 values('102', '6331777')u

10、pdate 宿舍表 set 宿舍電話='6331158' where 宿舍號='101'delete 宿舍表 where 宿舍號='102'5.創(chuàng)建視圖同學(xué)表視圖代碼(5分); 同學(xué)表視圖(學(xué)號, 姓名, 性別, 年齡, 民族, 身份證號, 宿舍號, 宿舍電話)create view 同學(xué)表視圖 asselect 學(xué)號, 姓名, 性別, 年齡, 民族, 身份證號, 同學(xué)表.宿舍號, 宿舍電話 from 同學(xué)表,宿舍表where 同學(xué)表.宿舍號=宿舍表.宿舍號6.從同學(xué)表視圖中查詢姓張的女同學(xué)的姓名、性別、宿舍電話。(4分)select 姓名, 性

11、別, 宿舍電話 from 同學(xué)表視圖 where 姓名 like '張%' and 性別='女'7.從同學(xué)表中查詢女同學(xué)的最大年齡、最小年齡、平均年齡。(5分)select 最大年齡 = max(年齡), 最小年齡 = min(年齡), 平均年齡 = avg(年齡) from 同學(xué)表 where 性別='女8.創(chuàng)建帶參數(shù)的存儲過程某宿舍同學(xué):姓名, 性別, 宿舍電話 執(zhí)行此過程,查詢'101'宿舍情況 (8分)create procedure 某宿舍同學(xué) 宿舍號 varchar(6) asselect 姓名, 性別, 宿舍電話from 同

12、學(xué)表視圖where 宿舍號 = 宿舍號goexecute 某宿舍同學(xué) '101'9.設(shè)置一SQL身份驗證的用戶賬戶:登錄名:U班主任,密碼:888,數(shù)據(jù)庫用戶名:U讀者,權(quán)限:可查詢查詢本數(shù)據(jù)庫中所有表、視圖、內(nèi)嵌表值函數(shù)的數(shù)據(jù),執(zhí)行所有的存儲過程。請寫出賬戶、權(quán)限設(shè)置的T_SQL腳本。(9分)exec sp_addlogin 'U班主任', '888', '我班同學(xué)數(shù)據(jù)庫'exec sp_grantdbaccess 'U班主任', 'U讀者'exec sp_addrolemember 'd

13、b_datareader', 'U讀者'一、12345678910CDCABACDAC二、12345678910YNNNNNYNNN三、 no答案分1.外模式、模式22.、23.68、C24.beautiful、我心中的太陽25.水平、垂直26.選擇、投影27.實體、域28.表、視圖29.6、721013.4300、13.45702四、no答案要點分1.(1) 為用戶集中需要的數(shù)據(jù),簡化了數(shù)據(jù)的用戶操作;(2) 對用戶隱藏了數(shù)據(jù)庫設(shè)計的復(fù)雜性;(3) 簡化用戶權(quán)限的管理 (4) 組織數(shù)據(jù)導(dǎo)出到其它應(yīng)用程序;52.1.數(shù)據(jù)表/視圖(select insert update

14、 delete)2.列(字段)的訪問(select update) 5五、no參考答案分1.create database 我班同學(xué)數(shù)據(jù)庫gouse 我班同學(xué)數(shù)據(jù)庫go22.create table 宿舍表(宿舍號 char(6) primary key,宿舍電話 char(7) check(宿舍電話 like '6330-90-90-90-9')33.create table 同學(xué)表(學(xué)號 char(6) primary key,姓名 nchar(4) not null,性別 nchar(1) check(性別 in ('男', '女'),年齡

15、 int ,民族 nchar(8) default '漢族' not null,身份證號 char(18) unique,宿舍號 char(6) references 宿舍表(宿舍號)64.insert 宿舍表 values('101', '6331157')insert 宿舍表 values('102', '6331777')update 宿舍表 set 宿舍電話='6331158' where 宿舍號='101'delete 宿舍表 where 宿舍號='102'

16、85.create view 同學(xué)表視圖 asselect 學(xué)號, 姓名, 性別, 年齡, 民族, 身份證號, 同學(xué)表.宿舍號, 宿舍電話 from 同學(xué)表,宿舍表where 同學(xué)表.宿舍號=宿舍表.宿舍號56.select 姓名, 性別, 宿舍電話 from 同學(xué)表視圖 where 姓名 like '張%' and 性別='女'47.select 最大年齡 = max(年齡), 最小年齡 = min(年齡), 平均年齡 = avg(年齡) from 同學(xué)表 where 性別='女'58.create procedure 某宿舍同學(xué) 宿舍號 va

17、rchar(6) asselect 姓名, 性別, 宿舍電話from 同學(xué)表視圖where 宿舍號 = 宿舍號goexecute 某宿舍同學(xué) '101'89.exec sp_addlogin 'U班主任', '888', '我班同學(xué)數(shù)據(jù)庫'exec sp_grantdbaccess 'U班主任', 'U讀者'exec sp_addrolemember 'db_datareader', 'U讀者'9數(shù)據(jù)庫原理試題(B卷)一、單項選擇題(每小題1分,共10分)1. ( )

18、是位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件,它屬于系統(tǒng)軟件,它為用戶或應(yīng)用程序提供訪問數(shù)據(jù)庫的方法。數(shù)據(jù)庫在建立、使用和維護時由其統(tǒng)一管理、統(tǒng)一控制。ADBMS BDB CDBS DDBA2. 下列四項中,不屬于SQL2000實用程序的是( )。A.企業(yè)管理器 B.查詢分析器C.服務(wù)管理器 D.媒體播放器3. SQL Server安裝程序創(chuàng)建4個系統(tǒng)數(shù)據(jù)庫,下列哪個不是( )系統(tǒng)數(shù)據(jù)庫。A. master B. modelC. pub D. msdb4. 下列哪個不是sql 數(shù)據(jù)庫文件的后綴。A.mdf B.ldfC.tif D.ndf5. 數(shù)據(jù)定義語言的縮寫詞為 ( )。A.DDL B.DC

19、LC.DML D.DBL6. SQL語言中,條件年齡 BETWEEN 15 AND 35表示年齡在15至35之間,且( )。A.包括15歲和35歲 B.不包括15歲和35歲C.包括15歲但不包括35歲 D.包括35歲但不包括15歲7. SQL的視圖是從( )中導(dǎo)出的。A. 基本表 B. 視圖 C. 基本表或視圖 D. 數(shù)據(jù)庫8. 在SQL語言中,建立存儲過程的命令是()A、CREATE PROCEDURE B、CREATE RULEC、CREATE DURE D、CREATE FILE9. SQL語言中,刪除表中數(shù)據(jù)的命令是( )。A. DELETE B. DROPC. CLEAR D. RE

20、MOVE10. 在MS SQL Server中,用來顯示數(shù)據(jù)庫信息的系統(tǒng)存儲過程是( )。A. sp_dbhelp B. sp_dbC. sp_help D. sp_helpdb二、判斷題(每空1分,共15分)1. '在那遙遠的地方' 是SQL中的字符串常量嗎?T2. 11.9 是SQL中的實型常量嗎 T3. select 16%4, 的執(zhí)行結(jié)果是: 0 嗎? T4. 2005.11.09 是SQL中的日期型常量嗎? F5. ¥2005.89 是SQL中的貨幣型常量嗎?F6. select 25/2 的執(zhí)行結(jié)果是: 12.5 嗎?F7. '李逵'>'

21、;李鬼' 比較運算的結(jié)果為真嗎?T8. 一個表可以創(chuàng)建多個主鍵嗎?F9. 創(chuàng)建唯一性索引的列可以有一些重復(fù)的值? F10. smallint 是SQL的數(shù)據(jù)類型嗎?T11. SQL Server不允許字段名為漢字?F12. 職稱 in ('教授', '副教授'')與 職稱 = '教授' or 職稱 = '副教授' 等價嗎? T13. 如果規(guī)則當前綁定到某列或用戶定義的數(shù)據(jù)類型,不能解除綁定能直接刪除規(guī)則?F14. 在表中創(chuàng)建一個標識列(IDENTITY),當用戶向表中插入新的數(shù)據(jù)行時,系統(tǒng)自動為該行標識列賦值嗎?

22、T15. 固定數(shù)據(jù)庫角色:db_datarader 的成員修改本數(shù)據(jù)庫內(nèi)表中的數(shù)據(jù)嗎?F三、填空題(每空1分,共20分)1. SQL Server 2005局部變量名字必須以開頭,而全局變量名字必須以開頭。2. 語句 select ascii('D'), char(67) 的執(zhí)行結(jié)果是:68和C。3. 語句 select lower('Beautiful') , rtrim('我心中的太陽 ') 的執(zhí)行結(jié)果是: beautiful、我心中的太陽。4. 選擇運算是根據(jù)某些條件對關(guān)系做水平分割;投影是根據(jù)某些條件對關(guān)系做垂直分割。5. 關(guān)系運算主要有

23、選擇、投影和連接。6. 完整性約束包括實體完整性、域完整性、參照完整性和用戶定義完整性。7. T-SQL 語言中,有算術(shù)運算、字符串連接運算、比較運算和邏輯運算。8. 語句 select day('2004-4-6'), len('我們快放假了.') 的執(zhí)行結(jié)果是:6和7。9. 語句 select floor(17.4), floor(-214.2), round(13.4382,2), round(-18.4562,3)的執(zhí)行結(jié)果是: 17、-215、13.4400和-18.4560。四、簡答題(每小題5分,共10分)1. 簡述SQL Server 2005的

24、安全性管理機制(6級,涉及登錄賬號、用戶、角色以及權(quán)限分配)。(6分)1. 計算機的連接2. SQL Server登錄(賬戶、固定服務(wù)器角色)3. 庫的訪問(用戶/角色:固定/自定義角色)4. 表/視圖的權(quán)限(select insert update delete)5. 存儲過程、內(nèi)嵌表值函數(shù)的權(quán)限(execute select)6. 表(視圖)中列的權(quán)限(select update)2. 在SQL Server 2005中,使用視圖的好處是什么?(4分)(1) 為用戶集中需要的數(shù)據(jù),簡化了數(shù)據(jù)的用戶操作;(2) 對用戶隱藏了數(shù)據(jù)庫設(shè)計的復(fù)雜性;(3) 簡化用戶權(quán)限的管理 (4) 組織數(shù)據(jù)導(dǎo)出

25、到其它應(yīng)用程序五、設(shè)計題(共45分) 現(xiàn)有關(guān)系數(shù)據(jù)庫如下: 數(shù)據(jù)庫名:學(xué)生成績數(shù)據(jù)庫學(xué)生信息表(學(xué)號 char(6),姓名,性別,民族,身份證號) 課程信息表(課號 char(6),名稱) 成績信息表(ID,學(xué)號,課號,分數(shù)) 用SQL語言實現(xiàn)下列功能的sql語句代碼。1. 創(chuàng)建數(shù)據(jù)庫學(xué)生成績數(shù)據(jù)庫代碼(2分)。create database 學(xué)生成績數(shù)據(jù)庫gouse 學(xué)生成績數(shù)據(jù)庫go2. 創(chuàng)建數(shù)據(jù)表課程信息表代碼;(2分) 課程信息表(課號 char(6),名稱) 要求使用:主鍵(課號)、非空(名稱)create table 課程信息表(課號 char(6) primary key, 名稱

26、 nchar(20) not null)3. 創(chuàng)建數(shù)據(jù)表學(xué)生信息表代碼;(4分) 學(xué)生信息表(學(xué)號 char(6),姓名,性別,民族,身份證號) 要求使用:主鍵(學(xué)號)、默認(民族)、非空(民族,姓名)、唯一(身份證號)、檢查(性別)create table 學(xué)生信息表(學(xué)號 char(6) primary key,姓名 nchar(4) not null,性別 nchar(1) check(性別 in ('男', '女'),民族 nchar(8) default '漢族' not null,身份證號 char(18) unique)4. 創(chuàng)建數(shù)

27、據(jù)表成績信息表;(5分) 成績信息表(ID,學(xué)號,課號,分數(shù)) 要求使用:外鍵(學(xué)號,課號)、檢查(分數(shù)),自動編號(ID)create table 成績信息表(ID int identity(1, 1),學(xué)號 char(6) references 學(xué)生信息表(學(xué)號),課號 char(6) references 課程信息表(課號),分數(shù) integer check(分數(shù) between 0 and 100)5. 將下列課程信息添加到課程信息表的代碼(8分) 課號 名稱 100101 西班牙語 100102 大學(xué)英語 修改 課號為100102的課程名稱:專業(yè)英語 刪除 課號為100101的課程信

28、息insert 課程信息表 values('100101', '西班牙語')insert 課程信息表 values('100102', '大學(xué)英語')update 課程信息表 set 名稱='專業(yè)英語' where 課號='100102'delete 課程信息表 where 課號='100101' 6. 創(chuàng)建視圖成績信息表視圖的代碼;(5分) 成績信息表視圖(學(xué)號,姓名,課號,課程名稱,分數(shù))create view 成績信息表視圖 asselect 成績信息表.學(xué)號,姓名,成績信息表

29、.課號,名稱 課程名稱,分數(shù) from 成績信息表,學(xué)生信息表,課程信息表where 成績信息表.學(xué)號=學(xué)生信息表.學(xué)號 and 成績信息表.課號=課程信息表.課號7. 從學(xué)生信息表中查詢姓劉的女同學(xué)的情況:姓名、性別、民族。(2分select 姓名, 性別, 民族 from 學(xué)生信息表 where 姓名 like '劉%' and 性別='女'8. 查詢有一門或一門以上課程成績小于60分的所有學(xué)生的信息,包括學(xué)號、姓名。(4分)select 學(xué)號, 姓名 from 學(xué)生信息表 where 學(xué)號 in (select distinct 學(xué)號 from 成績信息表

30、 where 分數(shù)<60)9. 創(chuàng)建帶參數(shù)的存儲過程某門課程高低均分、執(zhí)行該過程的代碼(7分) 存儲過程功能:查詢某門課程的最高分、最低分、平均分; 執(zhí)行該過程,查詢所有修專業(yè)英語這門學(xué)生的最高分、最低分、平均分;create procedure 某門課程高低均分課程名 nchar(16) asselect 課程名稱, 最高分=max(分數(shù)), 最低分=min(分數(shù)), 平均分=avg(分數(shù))from 成績信息表視圖where 課程名稱 = 課程名 group by 課程名稱goexecute 某門課程高低均分 '專業(yè)英語'10 設(shè)置一SQL身份驗證的用戶賬戶:登錄名:U

31、院長,密碼:888,數(shù)據(jù)庫用戶名:U讀者,權(quán)限:可查詢查詢本數(shù)據(jù)庫中所有表、視圖、內(nèi)嵌表值函數(shù)的數(shù)據(jù),執(zhí)行所有的存儲過程。請寫出賬戶、權(quán)限設(shè)置的T_SQL腳本。(6分)exec sp_addlogin 'U院長', '888', '學(xué)生成績數(shù)據(jù)庫'exec sp_grantdbaccess 'U院長', 'U讀者'exec sp_addrolemember 'db_datareader', 'U讀者'一、12345678910ADCCAACAAD二、12345678910111213

32、1415YYYNNNYNNYNYNYN三、 no答案分1.、22.68、C23.beautiful、我心中的太陽24.水平、垂直25.選擇、投影26.實體、域27.算術(shù)、邏輯28.6、729.17、-215、13.4400、-18.45604四、no答案要點分1.1. 計算機的連接2. SQL Server登錄(賬戶、固定服務(wù)器角色)3. 庫的訪問(用戶/角色:固定/自定義角色)4. 表/視圖的權(quán)限(select insert update delete)5. 存儲過程、內(nèi)嵌表值函數(shù)的權(quán)限(execute select)6. 表(視圖)中列的權(quán)限(select update)62.(1) 為用

33、戶集中需要的數(shù)據(jù),簡化了數(shù)據(jù)的用戶操作;(2) 對用戶隱藏了數(shù)據(jù)庫設(shè)計的復(fù)雜性;(3) 簡化用戶權(quán)限的管理 (4) 組織數(shù)據(jù)導(dǎo)出到其它應(yīng)用程序4五、no參考答案分1.create database 學(xué)生成績數(shù)據(jù)庫gouse 學(xué)生成績數(shù)據(jù)庫go22.create table 課程信息表(課號 char(6) primary key, 名稱 nchar(20) not null)23.create table 學(xué)生信息表(學(xué)號 char(6) primary key,姓名 nchar(4) not null,性別 nchar(1) check(性別 in ('男', '女&

34、#39;),民族 nchar(8) default '漢族' not null,身份證號 char(18) unique)44.create table 成績信息表(ID int identity(1, 1),學(xué)號 char(6) references 學(xué)生信息表(學(xué)號),課號 char(6) references 課程信息表(課號),分數(shù) integer check(分數(shù) between 0 and 100)55.insert 課程信息表 values('100101', '西班牙語')insert 課程信息表 values('1001

35、02', '大學(xué)英語')update 課程信息表 set 名稱='專業(yè)英語' where 課號='100102'delete 課程信息表 where 課號='100101'86.create view 成績信息表視圖 asselect 成績信息表.學(xué)號,姓名,成績信息表.課號,名稱 課程名稱,分數(shù) from 成績信息表,學(xué)生信息表,課程信息表where 成績信息表.學(xué)號=學(xué)生信息表.學(xué)號 and 成績信息表.課號=課程信息表.課號57.select 姓名, 性別, 民族 from 學(xué)生信息表 where 姓名 like &

36、#39;劉%' and 性別='女'28.select 學(xué)號, 姓名 from 學(xué)生信息表 where 學(xué)號 in (select distinct 學(xué)號 from 成績信息表 where 分數(shù)<60)49.create procedure 某門課程高低均分課程名 nchar(16) asselect 課程名稱, 最高分=max(分數(shù)), 最低分=min(分數(shù)), 平均分=avg(分數(shù))from 成績信息表視圖where 課程名稱 = 課程名 group by 課程名稱goexecute 某門課程高低均分 '專業(yè)英語'710exec sp_addl

37、ogin 'U院長', '888', '學(xué)生成績數(shù)據(jù)庫'exec sp_grantdbaccess 'U院長', 'U讀者'exec sp_addrolemember 'db_datareader', 'U讀者'6數(shù)據(jù)庫原理試題(C卷)一、單項選擇題(每小題1分,共10分)1.下列四項中,不屬于數(shù)據(jù)庫特點的是( )。A數(shù)據(jù)共享 B.數(shù)據(jù)完整性C. 數(shù)據(jù)冗余很高 D.數(shù)據(jù)獨立性高2. 目前( )數(shù)據(jù)庫系統(tǒng)已逐漸淘汰了網(wǎng)狀數(shù)據(jù)庫和層次數(shù)據(jù)庫,成為當今最為流行的商用數(shù)據(jù)庫系統(tǒng)。A關(guān)系 B面

38、向?qū)ο?C分布3. 數(shù)據(jù)庫設(shè)計中的概念結(jié)構(gòu)設(shè)計的主要工具是( )。A數(shù)據(jù)模型 BER模型 C新奧爾良模型 D概念模型4. ( )是位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件,它屬于系統(tǒng)軟件,它為用戶或應(yīng)用程序提供訪問數(shù)據(jù)庫的方法。數(shù)據(jù)庫在建立、使用和維護時由其統(tǒng)一管理、統(tǒng)一控制。ADBMS BDB CDBS DDBA5. 在SQL中,建立視圖用的命令是 ( )。A.CREATE SCHEMA B.CREATE TABLEC.CREATE VIEW D.CREATE INDEX6. SQL語言中,條件“年齡BETWEEN 20 AND 30”表示年齡在20至30之間,且( )。A.包括20歲和30

39、歲 B.不包括20歲和30歲C.包括20歲但不包括30歲 D.包括30歲但不包括20歲8. 在MS SQL Server中,用來顯示數(shù)據(jù)庫信息的系統(tǒng)存儲過程是( )。A. sp_dbhelp B. sp_db C. sp_help D. sp_helpdb9. SQL語言中,刪除一個表的命令是( )。A. DELETE B. DROP C. CLEAR D. REMOVE10. SQL的視圖是從( )中導(dǎo)出的。A基本表 B. 視圖 C. 基本表或視圖 D. 數(shù)據(jù)庫二、判斷題(每空1分,共10分) 1. "在那遙遠的地方" 是SQL中的字符串常量嗎? 2. "11.

40、9" 是SQL中的實型常量嗎? 3. 語句 select 16%4, 的執(zhí)行結(jié)果是: 0 嗎? 4. "2005.11.09" 是SQL中的日期型常量嗎? 5. ¥2005.89 是SQL中的貨幣型常量嗎? 6. 語句 select 15/2 的執(zhí)行結(jié)果是: 7.5 嗎?7. '李白'>'杜甫' 比較運算的結(jié)果為真嗎?8. 在事務(wù)中包含create database語句嗎? 9. 創(chuàng)建唯一性索引的列可以有一些重復(fù)的值? 10.固定數(shù)據(jù)庫角色:db_datawriter 的成員刪除本數(shù)據(jù)庫內(nèi)任何表中的數(shù)據(jù)嗎?三、填空題(每空1分

41、,共20分)1. 數(shù)據(jù)庫系統(tǒng)具有數(shù)據(jù)的_、_和_三級模式結(jié)構(gòu)。2. SQL Server 2005局部變量名字必須以_開頭,而全局變量名字必須以_開頭。3. 語句 select ascii('C'), char(68), len(' 你 是BigTiger ') 的執(zhí)行結(jié)果是: _、_和_。4. 語句 select upper('beautiful') , ltrim (' 我心中的太陽') 的執(zhí)行結(jié)果是: _和_。5. 關(guān)系運算主要有_、_、_。6. 選擇運算是根據(jù)某些條件對關(guān)系做_分割;投影是根據(jù)某些條件對關(guān)系做_分割。7.

42、索引的類型主要有_ _和_ _。8. 在SQL Server 2005中,數(shù)據(jù)庫對象包括數(shù)據(jù)表、_、_、觸發(fā)器、規(guī)則、默認和用戶自定義的數(shù)據(jù)類型等。四、簡述題(每小題5分,共10分)1. 簡述使用游標的步驟。2. 簡述SQL Server 2005的安全性管理機制,涉及登錄賬號、用戶、角色以及權(quán)限分配。五、設(shè)計題(共50分) 現(xiàn)有關(guān)系數(shù)據(jù)庫如下: 數(shù)據(jù)庫名:學(xué)生成績數(shù)據(jù)庫學(xué)生表(學(xué)號 char(6),姓名,性別,民族,身份證號) 課程表(課號 char(6),名稱) 成績表(ID,學(xué)號,課號,分數(shù)) 用SQL語言實現(xiàn)下列功能的sql語句代碼:1. 創(chuàng)建數(shù)據(jù)庫學(xué)生成績數(shù)據(jù)庫代碼(2分);2. 創(chuàng)

43、建課程表代碼(2分); 課程表(課號 char(6),名稱) 要求使用:主鍵(課號)、非空(名稱)3. 創(chuàng)建學(xué)生表代碼(6分); 學(xué)生表(學(xué)號 char(6),姓名,性別,民族,身份證號) 要求使用:主鍵(學(xué)號)、默認(民族)、非空(民族,姓名)、唯一(身份證號)、檢查(性別)4. 創(chuàng)建成績表代碼(4分); 成績表(ID,學(xué)號,課號,分數(shù)) 要求使用:主鍵(課號)、外鍵(成績表.學(xué)號,成績表.課號)、檢查(分數(shù)),自動編號(ID)5. 將下列課程信息添加到課程表的代碼(8分) 課號 課程名稱 100001 大學(xué)語文 100002 大學(xué)英語 100003 西班牙語 修改 課號為100002的課程

44、名稱:實用英語 刪除 課號為100003的課程信息 6. 寫出創(chuàng)建:成績表視圖(學(xué)號,姓名,課號,課程名稱,分數(shù))的代碼;(4分)7. 寫出創(chuàng)建:某門課程成績 內(nèi)嵌表值函數(shù)以及檢索的代碼;(6分) 檢索:所有修 實用英語 這門學(xué)生的成績;8. 寫出創(chuàng)建:某門課程高低均分 計算某門課程成績最高分、最低分、平均分 存儲過程以及執(zhí)行的代碼;(6分) 執(zhí)行:所有修 實用英語 這門學(xué)生的最高分、最低分、平均分;9. 檢索姓李的女同學(xué)的情況:姓名、性別、民族。(2分)10. 檢索有一門或一門以上課程成績大于等于90分的所有學(xué)生的信息,包括學(xué)號、姓名。(4分)11. 設(shè)置一SQL身份驗證的賬戶:登錄名:U領(lǐng)

45、導(dǎo),密碼:888,數(shù)據(jù)庫用戶名:U讀者,權(quán)限:可查詢查詢本數(shù)據(jù)庫中所有表、視圖、內(nèi)嵌表值函數(shù)的數(shù)據(jù)。請寫出賬戶、權(quán)限設(shè)置的T_SQL腳本。(6分)數(shù)據(jù)庫原理試題(C卷)參考答案一、1.C 2.A 3. B 4.A 5.C 6.A 7. 8.D 9.B 10.C 二、1. N 2.N 3.Y 4.N 5.N 6.N 7. Y 8.N 9.N 10.Y三、1. 外模式、模式、內(nèi)模式。2. ,3. 67, D, 124. BEAUTIFAL, 我心中的太陽5. 選擇、投影、連接。6. 水平, 垂直7. 聚簇索引 非聚簇索引8. 視圖、存儲過程四、簡述題1. 簡述使用游標的步驟。(1) 聲明游標:de

46、clare 游標名 cursor for select語句;(2) 打開游標:open 游標名;(3) 處理數(shù)據(jù): fetch delete update (4) 關(guān)閉游標:close 游標名;(5) 釋放游標:deallocate 游標名;2. 要點:1. 計算機的連接2. SQL Server服務(wù)器登錄(登錄、固定服務(wù)器角色)3. 數(shù)據(jù)庫的訪問(用戶/角色:固定/自定義數(shù)據(jù)庫角色)4. 數(shù)據(jù)表(視圖)的訪問(select insert update delete)5. 存儲過程/內(nèi)嵌表值函數(shù)的訪問(execute/select)6. 數(shù)據(jù)表(視圖)中列(字段)的訪問(select upda

47、te)五、設(shè)計題1. create database 學(xué)生成績數(shù)據(jù)庫gouse 學(xué)生成績數(shù)據(jù)庫go2. create table 學(xué)生表(學(xué)號 char(6) primary key,姓名 nchar(4) not null,性別 nchar(1) check(性別 in ('男', '女'),民族 nchar(8) default '漢族' not null,身份證號 char(18) unique) 3. create table 課程表(課號 char(6) primary key, 名稱 char(40) not null) 4. cre

48、ate table 成績表(ID integer IDENTITY(1, 1), 學(xué)號 char(6) references 學(xué)生表(學(xué)號),課號 char(6) references 課程表(課號),分數(shù) integer check(分數(shù) between 0 and 100) 5. insert 課程表 values('100001', '大學(xué)語文') insert 課程表 values('100002', '大學(xué)英語') insert 課程表 values('100003', '西班牙語') u

49、pdate課程表 set 名稱='實用英語' where 課號='100002' delete課程表 where 課號='100003'6. create view 成績表視圖 asselect 成績表.學(xué)號,姓名,成績表.課號,名稱 課程名稱,分數(shù) from 成績表,學(xué)生表,課程表where 成績表.學(xué)號=學(xué)生表.學(xué)號 and 成績表.課號=課程表.課號create view 成績表視圖 asselect 成績表.學(xué)號,姓名,成績表.課號,名稱 課程名稱,分數(shù) from 成績表 join 學(xué)生表 on 成績表.學(xué)號=學(xué)生表.學(xué)號 join 課程

50、表 on 成績表.課號=課程表.課號7. create function 某門課程成績(課程名 varchar(40)returns table asreturn (select 學(xué)號,姓名,課程名稱,分數(shù) from 成績表視圖where 課程名稱=課程名) create function 某門課程成績(課程名 varchar(40)returns table asreturn (select * from 成績表視圖where 課程名稱=課程名)select * from 某門課程成績('實用英語')8. create procedure 某門課程高低均分課程名 varcha

51、r(40) asselect 課程名稱, 最高分=max(分數(shù))、最低分=min(分數(shù))、平均分=avg(分數(shù))from 成績表視圖where 課程名稱 = 課程名 execute 某門課程高低均分 '實用英語'9. select 姓名, 性別, 民族 from 學(xué)生表 where 姓名 like '李%' and 性別='女'10. select 學(xué)號, 姓名 from 學(xué)生表 where學(xué)號 in (select distinct 學(xué)號 from 成績表 where分數(shù)>=90)11. use 學(xué)生成績數(shù)據(jù)庫exec sp_addlog

52、in 'U領(lǐng)導(dǎo)', NULL, '學(xué)生成績數(shù)據(jù)庫', '簡體中文'exec sp_password NULL, '888', 'U領(lǐng)導(dǎo)'exec sp_grantdbaccess 'U領(lǐng)導(dǎo)', 'U讀者'exec sp_addrolemember 'db_datareader', 'U讀者'use 學(xué)生成績數(shù)據(jù)庫exec sp_addlogin 'U領(lǐng)導(dǎo)', '888', '學(xué)生成績數(shù)據(jù)庫'exec sp

53、_grantdbaccess 'U領(lǐng)導(dǎo)', 'U讀者'exec sp_addrolemember 'db_datareader', 'U讀者'數(shù)據(jù)庫原理試題(D卷)一、單項選擇題(每小題1分,共10分)1數(shù)據(jù)庫應(yīng)用系統(tǒng)是由數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)(及其開發(fā)工具)、應(yīng)用系統(tǒng)、( )和用戶構(gòu)成。ADBMS BDBCDBS DDBA2數(shù)據(jù)庫管理系統(tǒng)的英文縮寫是( )。ADBMS BDBSCDBA DDB3在關(guān)系運算中,選取符合條件的元組是( )運算。A除法 B投影C連接 D選擇4數(shù)據(jù)庫設(shè)計中的邏輯結(jié)構(gòu)設(shè)計的任務(wù)是把( )階段產(chǎn)生的概念數(shù)據(jù)庫模式變換為邏輯結(jié)構(gòu)的數(shù)據(jù)庫模式。A需求分析 B物理設(shè)計C邏輯結(jié)構(gòu)設(shè)計 D概念結(jié)構(gòu)設(shè)計5一個規(guī)范化的關(guān)系至少應(yīng)當滿足( )的要求。A一范式 B二范式C三范式 D四范式6在實際數(shù)據(jù)庫設(shè)計中,“學(xué)號”通常作為( )存在。A數(shù)據(jù)結(jié)構(gòu) B數(shù)據(jù)存儲C數(shù)據(jù)項目 D處理過程7SQL Server 2005中刪除表中記錄的命令是( )。ADELETE BSELECTCUPDATE DDROP 8運行命令SELECT ASCII(Alklk) 的結(jié)果是( )。A48 B32C90 D65 9在SQL中,建立視圖用的命令是 ( )。A.CREATE SCHEMA B.CREATE TABLEC.CREATE V

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論