第一篇:SQL Server數據庫試題九及答案
SQL Server數據庫試題九及答案
一、選擇題(每題2分,共30分)
1、下面不屬于數據定義功能的SQL語句是:()
A.CREAT TABLE B.CREAT CURSOR C.UPDATE D.ALTER TABLE
2、SQL數據庫中的視圖與下列哪項是對應的()。A.關系模式 B.存儲模式 C.子模式 D.以上都不是
3、下列選項中不是數據庫復制類型的是()。A.快照復制 B.差異復制 C.事務復制 D.合并復制
4、下列說法錯誤的是:()。
A.一個基本表可以跨一個或多個存儲文件 B.一個存儲文件可以跨一個或多個基本表
C.每個存儲文件與外部存儲器上一個物理文件對應 D.每個基本表與外部存儲器上一個物理文件對應
5.顯示包含警告信息或其他信息的消息框,應該使用的操作是()。A.Echo B.Message C.Warn D.MsgBox
6、在SQL Server 2000中,索引的順序和數據表的物理順序相同的索引是()。A.聚集索引 B.非聚集索引 C.主鍵索引 D.唯一索引 7.SQL Server的字符型系統數據類型主要包括()。A.Int、money、char B.char、varchar、text C.datetime、binary、int D.char、varchar、int
8、以下選項中哪一項不是訪問數據庫系統的接口()。A.ODBC B.OLE DB C.API D.ADO
9、在SELECT語句的WHERE子句的條件表達式中,可以匹配0個到多個字符的通配符是()
A.* B.% C.-D.?
10、SELECT語句中與HAVING子句同時使用的是()子句。A.ORDER BY B.WHERE C.GROUP BY D.無需配合 11~15題使用如下數據: 當前盤當前目錄下有數據庫db_stock,其中有表stock的內容是: 股票代碼 股票名稱 單價 交易所 600600 青島啤酒 7.48 上海 600601 方正科技 15.20 上海 600602 廣電電子 10.40 上海 600603 興業房產 12.76 上海 600604 二紡機 9.96 上海 600605 輕工機械 14.59 上海 000001 深發展 7.48 深圳 000002 深萬科 12.50 深圳
11、有如下SQL語句
create view stock_view as select * from stock where 交易所=”深圳” 執行該語句后產生的視圖包含的記錄個數是()A.1 B.2 C.3 D.4
12、有如下SQL語句 create view view_stock as select 股票名稱 as 名稱,單價 from stock 執行該語句后產生的視圖含有的字段名是()A.股票、名稱、單價 B.名稱、單價
C 名稱、單價、交易所 D 股票名稱、單價、交易所
13、執行如下SQL語句后 select distinct 單價 from stock
where 單價=(select min(單價)from stock)into dbf stock_x 表stock_x中的記錄個數是()A.1 B.2 C.3 D.4
14、求每個交易所的平均單價的SQL語句是()
A.SELECT(交易所,avg(單價)FROM stock GROUP BY 單價 B.SELECT(交易所,avg(單價)FROM stock ORDER BY 單價 C.SELECT(交易所,avg(單價)FROM stock ORDER BY 交易所 D.SELECT(交易所,avg(單價)FROM stock GROUP BY交易所
15、在當前盤當前目錄下刪除表stock的命令是()A.DROP stock B.DELETE TABLE stock C.DROP TABLE stock C.DELETE stock
二、填空題(每空2分,共30分)
1、SQL Server 2000支持5種類型的存儲過程:系統存儲過程、、臨時存儲過程、和擴展存儲過程。
2、在Microsoft SQL Server系統中,數據庫備份的類型包括:數據庫備份、、和。
3、觸發器有3種類型,即INSERT類型、和。
4、Transact-SQL語言有4部分元素組成,分別是:、數據定義語言、和一些附加的語言元素。
5、事務的4個屬性:原子性、一致性、和。
6、ADO的對象模型為層次結構,主要的ADO對象有3個:、、和。
7、函數datediff(year,’1998-10-12’, ’2005-1-17’)的執行結果是 ;函數str(1234.56,3,1)的執行結果是。
三、簡答題(共3題,20分)
1、為什么要創建索引(4分)
2、簡述INSERT觸發器的工作原理(6分)
3、根據所給的商品庫和教學庫,按照下列所給的每條SQL查詢語句寫出相應的功能,或者按照下列所給的每種功能寫出相應的SQL查詢語句。(每小題2分,共10分)在名稱為商品庫的數據庫中包含有商品表1和商品表2,它們的定義分別為: 商品表1(商品代號 char(8),分類名 char(8),單價 float,數量 int)商品表2(商品代號 char(8),產地 char(6),品牌 char(6),)在名稱為教學庫的數據庫中包含有學生、課程和選課三個表,它們的定義分別為: 學生(學生號 char(7),姓名 char(6),性別 char(2),出生日期 datetime, 專業 char(10),年級 int)課程(課程號 char(4),課程名 char(10),課程學分 int 選課(學生號 char(7),課程號 char(4),成績 int)1.select distinct 產地 from 商品表2
2.select * from 學生
where 學生號 in(select 學生號 from 選課
group by 學生號 having count(*)=1)
3.select * from 學生
where 學生號 in(select 學生號 from 選課
group by 學生號 having count(*)<=2)or not exists(select * from 選課
where 學生.學生號=選課.學生號)
4.從商品庫中查詢出每類(即分類名相同)商品的最高單價。
5.從教學庫中查詢出至少選修了姓名為@m1學生所選課程中一門課的全部學生。
四、設計題(每題4分,共20分)有一個“學生-課程”數據庫,數據庫中包括三個表:(1)“學生”表Student由學號(Sno)、姓名(Sname)、性別(Ssex)、年齡(Sage)、所在系(Sdept)五個屬性組成,可記為: Student(Sno,Sname,Ssex,Sage,Sdept)Sno 為關鍵字。(2)“課程”表Course由課程號(Cno)、課程名(Cname)、先修課號(Cpno)、學分(Ccredit)四個屬性組成,可記為: Course(Cno,Cname,Cpno,Ccredit)Cno為關鍵字。
(3)“學生選課”表SC由學號(Sno)、課程號(Cno)、成績(Grade)三個屬性組成,可記為: SC(Sno,Cno,Grade)(SNO, CNO)為關鍵字。完成下列操作:
1、建立一個“學生”表Student,它由學號Sno、姓名Sname、性別Ssex、年齡Sage、所在系Sdept五個屬性組成,其中學號屬性不能為空,并且其值是唯一的。
2、查考試成績有不及格的學生的學號
3、將學生95001的年齡改為22歲
4、計算1號課程的學生平均成績
5、創建一存儲過程getDetailByName,通過輸入參數學生姓名(如“章山“),篩選出該學生的基本信息,對不存在此學生姓名的輸入值,必須作一檢測,打印信息“不存在此學生”。
參考答案
一、選擇題(每題2分,共30分)
1、A
2、C
3、B
4、D
5、D
6、C
7、B
8、C
9、A
10、C
11、B
12、B
13、B
14、D
15、C
二、填空題(每空2分,共30分)
1、本地存儲過程、遠程存儲過程
2、事務日志備份、差異備份、文件和文件組備份
3、UPDATE類型、DELETE類型
4、數據控制語言(或DCL)、數據操作語言(或DML)
5、隔離性、持久性
6、Connection Command和Recordset7、7 ***
三、簡答題(每題5分,共20分)
1、什么要創建索引?(4分)
答:創建索引可以大大提高系統的性能。第一,通過創建唯一性索引,可以保證每一行數據的唯一性。第二,可以大大加快數據的檢索速度,這也是所以的最主要原因。第三,可以加速表與表之間的連接,特別是實現數據的參考完整性方面特有意義。第四,在使用ORDER BY和GROUP BY子句進行數據檢索時,同樣可以顯著減少查詢中分組和排序的時間。第五,通過使用索引,可以在查詢過程中,使用優化隱藏器,提高系統性能。
2、簡述INSERT觸發器的工作原理(6分)
答:當向表中插入數據時,INSERT觸發器觸發執行。當INSERT觸發器觸發時,新的記錄增加到觸發器表中和inserted表中。該inserted表是邏輯表,保存了所插入記錄的拷貝,允許用戶參考INSERT語句中的數據。觸發器可以檢查inserted表,來確定該觸發器的操作是否應該執行和如何執行。在inserted表中的哪些記錄,總是觸發表中一行或多行記錄的冗余。
3、根據商品庫和教學庫,按照下列所給的每條SQL查詢語句寫出相應的功能,或者按照下列所給的每種功能寫出相應的SQL查詢語句。(每小題2分,共10分)1.從商品庫中查詢出所有商品的不同產地。
2.從教學庫中查詢出只選修了一門課程的全部學生。
3.從教學庫中查詢出最多選修了2門課程(含未選任何課程)的全部學生。4.select 分類名,max(單價)as 最高單價
from 商品表1 group by 分類名
5.select distinct 學生.* from 學生,選課
where 學生.學生號=選課.學生號 and 課程號=any(select 課程號 from 學生,選課
where 學生.學生號=選課.學生號 and 姓名=@m1)
四、設計題(每題4分,共20分)
1、建立一個“學生”表Student,它由學號Sno、姓名Sname、性別Ssex、年齡Sage、所在系Sdept五個屬性組成,其中學號屬性不能為空,并且其值是唯一的。CREATETABLE Student
(Sno CHAR(5)NOT NULL UNIQUE, Sname CHAR(20), Ssex CHAR(1), Sage INT, Sdept CHAR(15));
2、查考試成績有不及格的學生的學號 SELECT DISTINCT Sno FROM Course WHERE Grade <60;
3、將學生95001的年齡改為22歲 UPDATE Student SET Sage=22
WHERE Sno='95001';
4、計算1號課程的學生平均成績 SELECT AVG(Grade)FROM SC WHERE Cno='1';
5、創建一存儲過程getDetailByName,通過輸入參數學生姓名(如“章山”),篩選出該學生的基本信息,對不存在此學生姓名的輸入值,必須作一檢測,打印信息“不存在此學生”。Create procedure getDetailByName @name nvarchar(10)AS IF(SELECT COUNT(*)FROM Student WHERE Sname = @Name)> 0 SELECT * FROM Student Where Sname = @Name ELSE SELECT 警示 = '不存在姓名為 ' + @Name + ' 的學生資料'
·全國2005年4月高等教育自學考試數據庫技術試題(3)時間:2009-03-25 18:06來源: 作者: 點擊:6次
;B.WHERE A NULL C.WHERE A IS NOT NULL D.WHERE A NOT IS NULL 12.以下關于分布式數據庫系統的說法中,正確的是()A.各個場地必須具有相同的分布模式 B.各個場地必須具有
;
B.WHERE A <>NULL C.WHERE A IS NOT NULL
D.WHERE A NOT IS NULL 全國2005年4月高等教育自學考試數據庫技術試題 課程代碼:03139
一、單項選擇題(本大題共20小題,每小題2分,共40分)在每小題列出的四個備選項中只有一個是符合題目要求的,請將其代碼填寫在題后的括號內。錯選、多選或未選均無分。
1.下列數據模型中,獨立于DBMS軟件和硬件設備的是()A.概念模型
B.外部模型 C.邏輯模型
D.物理模型
2.數據字典中存放的是()A.數據與數據的來源
B.數據的結構 C.數據與數據的結構
D.數據的來源
3.E.F.Codd提出了數據庫的()A.層次模型
B.網絡模型 C.關系模型
D.面向對象模型
4.某商場的售貨員分為多個組,每組中有一個售貨員作為組長,則組長與組內其他售貨員之間的聯系是()A.直接聯系
B.二元聯系 C.復合聯系
D.遞歸聯系
5.以下關于關系性質的說法中,錯誤的是()A.關系中任意兩行的值不能完全相同
B.關系中任意兩列的值不能完全相同 C.關系中任意兩行可以交換順序
D.關系中任意兩列可以交換順序
6.已知關系R(X,Y)和S(X,Z),它們的主碼分別是X和Y,則R S的主碼是()A.X
&nbs
p;
B.Y C.X或Y
D.XY
7.已知關系R(A,B)和S(A,B),則以下關系代數表達式中錯誤的是()A.R∩S=S-(S-R)
B.R-S=R-(R∩S)C.R∪S=R∪(S-R)
D.R∩S=R-(S-R)
8.下列沒有保存在事務日志中的是()A.所有讀取數據庫的操作
B.數據更新前的值
C.數據更新后的值
D.事務開始與終止的信息
9.在ODBC體系結構中,連接數據庫驅動程序與數據庫管理系統的橋梁是()A.數據源
B.數據庫
C.用戶
D.數據庫服務器
10.在分布式數據庫系統中,有關系:學生(學號,姓名,性別,班級),將其劃分為(學號,姓名,性別)和(學號,班級)兩個子集,這樣的數據劃分方式稱為()A.水平分片
B.垂直分片 C.導出分片
D.混合分片
11.如果想找出在關系R的A屬性上不為空的那些元組,則選擇子句應該為()A.WHERE A!=NULL
12.以下關于分布式數據庫系統的說法中,正確的是()A.各個場地必須具有相同的分布模式 B.各個場地必須具有相同的DDBMS C.各個場地既支持局部應用,又支持全局應用 D.各個場地不應有數據冗余
13.在MS SQL Server中能夠授權語句許可的角色有()A.SA和DBO
B.SA和DBOO C.DBO和DBOO
D.SA,DBO和DBOO
14.在MS SQL Server中,如果要使新建的數據庫繼承某些缺省設置,那么這些設置信息應存放在()A.tempdb數據庫中
B.master數據庫中 C.msdb數據庫中
D.model數據庫中
15.在SQL Server中,能夠鍵入SQL命令獲得數據庫查詢結果的圖形化工具是()A.ISLQ_w和SQL客戶機端配置器
B.SQL客戶機端配置器和SQL服務管理器 C.SQL服務管理器和SQL企業管理器 D.ISQL_w和SQL企業管理器
16.已知關系R(A,B)和S(B,C),在下面列出的SQL語句中,實現了關系代數表達式R S運算的是()A.SELECT*FROM R,S WHERE R.B=S.B B.SELECT A,B,C FROM R,S WHERE R.B=S.B C.SELECT A,R.B,C FROM R,S WHERE R.B=S.B D.SELECT A,R.B,S.B,C FROM R,S WHERE R.B=S.B
17.已知關系:學生(學號,姓名,年齡),假定在年齡屬性上建有索引,則該索引有利于加快執行查詢語句()A.SELECT*FROM 學生ORDER BY 姓名 B.SELECT*FROM 學生ORDER BY 年齡 C.SELECT*FROM 學生WHERE 年齡<>30 D.SELECT*FROM 學生WHERE 姓名LIKE ′張%′
18.已知關系R(A,B)和S(A,C),其中A既是R的主碼,又是S參照R的外碼,并且A不取空值。若R中有10個元組,S中有5個元組,則 中含有的元組數目范圍是(&
·全國2005年4月高等教育自學考試數據庫技術試題(4)時間:2009-03-25 18:06來源: 作者: 點擊:次
nbsp;)A.(5,10)B.(5,15)C.(10,10)D.(10,15)19.有兩個事務T1和T2,都用到數據項X和Y,則導致死鎖的情況是()A.T1已對X,Y加共享鎖;T2申請對X,Y的排它鎖 B.T nbsp;)A.(5,10)
B.(5,15)C.(10,10)
D.(10,15)
19.有兩個事務T1和T2,都用到數據項X和Y,則導致死鎖的情況是()A.T1已對X,Y加共享鎖;T2申請對X,Y的排它鎖 B.T1已對X,Y加排它鎖;T2申請對X,Y的共享鎖
C.T1對X已加共享鎖,申請對Y的共享鎖;同時T2對Y已加共享鎖,申請對X的排它鎖 D.T1對X已加排它鎖,申請對Y的排它鎖;同時T2對Y已加共享鎖,申請對X的共享鎖
二、填空題(本大題共10小題,每小題1分,共10分)21.SQL中用來定義主碼的關鍵詞是__________。
22.在數據抽象的四個級別中,__________模型的抽象級別最高。
23.數據冗余不僅增加存儲開銷,而且可能導致數據的__________。
24.所有主要的網絡數據庫軟件都遵循__________報告中提出的標準。
25.使用SQL語言的__________關鍵詞可以消除查詢結果中重復出現的元組。
26.關系R(A,B,C)中有10個元組,A是R的主碼,則 中最多含有__________個元組。
27.通過建立__________實體,可以將兩個實體之間的M∶N聯系轉換為兩個1∶M聯系。
28.將子類實體與超類實體轉換成關系模型時,父表的__________屬性同時也在子表中出現。
29.ODBC的體系結構由ODBC數據庫應用程序、驅動程序管理器、__________和數據源四個部分組成。
30.客戶機/服務器的三層模型是將服務器端分成__________和數據庫服務器兩個部分。
三、簡答題(本大題共5小題,每小題3分,共15分)31.視圖的作用的是什么? 32.請用SQL語句完成下列操作:授權用戶李明具有查詢R表的權限,并且李明可以將該權限轉授給其他用戶。
33.網絡環境下“分布計算”概念的含義有哪些? 34.數據轉儲主要有哪些方式? 35.已知關系:學生(學號,姓名,年齡,性別),請用SQL語句創建姓名屬性上的唯一性索引idx_name.四、設計題(本大題共4小題,每小題5分,共20分)已知如下兩個關系:
項目(項目編號:項目名稱,項目負責人,金額),其中項目負責人是指負責該項目的教師的教師編號;
參加(教師編號,項目編號),其中項目負責人也是該項目的參加者,同時一個教師可以參加多個項目。基于以上關系回答36—39題。
36.請用關系代數表達式寫出下列查詢:
列出參加但并不負責項目I1的教師的教師編號,其中I1為項目編號。37.試用SQL語句寫出下列查詢: 列出金額最高的項目的項目編號。38.試用SQL語句寫出下列查詢:
列出每個教師所參加項目的金額總和。39.試用SQL語句寫出下列查詢:
列出參加了項目編號為I1和I2項目的教師的教師編號。
五、綜合題(本題15分)40.為體育部門建立數據庫,其中包含如下信息:
(1)運動隊:隊名、主教練,其中隊名唯一標識運動隊。(2)運動員:運動員編號、姓名、性別、年齡。
(3)運動項目:項目編號、項目名、所屬類別。其中每個運動隊有多名運動員,每名運動員只屬于一個運動隊;每名運動員可以參加多個項目,每個項目可以有多名運動員參加。系統記錄每名運動員參加每個項目所得名次和成績以及比賽日期。根據上述敘述,解答以下問題:
(1)建立E-R模型(實體的屬性可以省略)。
(2)將E-R模型轉換為關系模型,并用SQL寫出建表語句,要求包含主碼、外碼約束
(責任編輯:admin)
第二篇:SQL Server數據庫試題九及答案
一、選擇題(每題2分,共30分)
1、下面不屬于數據定義功能的SQL語句是:()
A.CREAT TABLE B.CREAT CURSOR C.UPDATE D.ALTER TABLE
2、SQL數據庫中的視圖與下列哪項是對應的()。A.關系模式 B.存儲模式 C.子模式 D.以上都不是
3、下列選項中不是數據庫復制類型的是()。A.快照復制 B.差異復制 C.事務復制 D.合并復制
4、下列說法錯誤的是:()。
A.一個基本表可以跨一個或多個存儲文件 B.一個存儲文件可以跨一個或多個基本表
C.每個存儲文件與外部存儲器上一個物理文件對應 D.每個基本表與外部存儲器上一個物理文件對應
5.顯示包含警告信息或其他信息的消息框,應該使用的操作是()。A.Echo B.Message C.Warn D.MsgBox
6、在SQL Server 2000中,索引的順序和數據表的物理順序相同的索引是()。A.聚集索引 B.非聚集索引 C.主鍵索引 D.唯一索引 7.SQL Server的字符型系統數據類型主要包括()。A.Int、money、char B.char、varchar、text C.datetime、binary、int D.char、varchar、int
8、以下選項中哪一項不是訪問數據庫系統的接口()。A.ODBC B.OLE DB C.API D.ADO
9、在SELECT語句的WHERE子句的條件表達式中,可以匹配0個到多個字符的通配符是()
A.* B.% C.-D.?
10、SELECT語句中與HAVING子句同時使用的是()子句。A.ORDER BY B.WHERE C.GROUP BY D.無需配合 11~15題使用如下數據: 當前盤當前目錄下有數據庫db_stock,其中有表stock的內容是: 股票代碼 股票名稱 單價 交易所 600600 青島啤酒 7.48 上海 600601 方正科技 15.20 上海 600602 廣電電子 10.40 上海 600603 興業房產 12.76 上海 600604 二紡機 9.96 上海 600605 輕工機械 14.59 上海 000001 深發展 7.48 深圳 000002 深萬科 12.50 深圳
11、有如下SQL語句
create view stock_view as select * from stock where 交易所=”深圳” 執行該語句后產生的視圖包含的記錄個數是()A.1 B.2 C.3 D.4
12、有如下SQL語句
create view view_stock as select 股票名稱 as 名稱,單價 from stock 執行該語句后產生的視圖含有的字段名是()
A.股票、名稱、單價 B.名稱、單價
C 名稱、單價、交易所 D 股票名稱、單價、交易所
13、執行如下SQL語句后
select distinct 單價 from stock where 單價=(select min(單價)from stock)into dbf stock_x 表stock_x中的記錄個數是()A.1 B.2 C.3 D.4
14、求每個交易所的平均單價的SQL語句是()
A.SELECT(交易所,avg(單價)FROM stock GROUP BY 單價 B.SELECT(交易所,avg(單價)FROM stock ORDER BY 單價 C.SELECT(交易所,avg(單價)FROM stock ORDER BY 交易所 D.SELECT(交易所,avg(單價)FROM stock GROUP BY交易所
15、在當前盤當前目錄下刪除表stock的命令是()A.DROP stock B.DELETE TABLE stock C.DROP TABLE stock C.DELETE stock
二、填空題(每空2分,共30分)
1、SQL Server 2000支持5種類型的存儲過程:系統存儲過程、、臨時存儲過程、和擴展存儲過程。
2、在Microsoft SQL Server系統中,數據庫備份的類型包括:數據庫備份、、和。
3、觸發器有3種類型,即INSERT類型、和。
4、Transact-SQL語言有4部分元素組成,分別是:、數據定義語言、和一些附加的語言元素。
5、事務的4個屬性:原子性、一致性、和。
6、ADO的對象模型為層次結構,主要的ADO對象有3個:、、和。
7、函數datediff(year,’1998-10-12’, ’2005-1-17’)的執行結果是 ;函數str(1234.56,3,1)的執行結果是。
三、簡答題(共3題,20分)
1、為什么要創建索引(4分)
2、簡述INSERT觸發器的工作原理(6分)
3、根據所給的商品庫和教學庫,按照下列所給的每條SQL查詢語句寫出相應的功能,或者按照下列所給的每種功能寫出相應的SQL查詢語句。(每小題2分,共10分)
在名稱為商品庫的數據庫中包含有商品表1和商品表2,它們的定義分別為: 商品表1(商品代號 char(8),分類名 char(8),單價 float,數量 int)商品表2(商品代號 char(8),產地 char(6),品牌 char(6),)在名稱為教學庫的數據庫中包含有學生、課程和選課三個表,它們的定義分別為: 學生(學生號 char(7),姓名 char(6),性別 char(2),出生日期 datetime, 專業 char(10),年級 int)課程(課程號 char(4),課程名 char(10),課程學分 int 選課(學生號 char(7),課程號 char(4),成績 int)1.select distinct 產地 from 商品表2
2.select * from 學生
where 學生號 in(select 學生號 from 選課
group by 學生號 having count(*)=1)
3.select * from 學生
where 學生號 in(select 學生號 from 選課
group by 學生號 having count(*)<=2)or not exists(select * from 選課
where 學生.學生號=選課.學生號)
4.從商品庫中查詢出每類(即分類名相同)商品的最高單價。
5.從教學庫中查詢出至少選修了姓名為@m1學生所選課程中一門課的全部學生。
四、設計題(每題4分,共20分)有一個“學生-課程”數據庫,數據庫中包括三個表:(1)“學生”表Student由學號(Sno)、姓名(Sname)、性別(Ssex)、年齡(Sage)、所在系(Sdept)五個屬性組成,可記為: Student(Sno,Sname,Ssex,Sage,Sdept)Sno 為關鍵字。(2)“課程”表Course由課程號(Cno)、課程名(Cname)、先修課號(Cpno)、學分(Ccredit)四個屬性組成,可記為: Course(Cno,Cname,Cpno,Ccredit)Cno為關鍵字。(3)“學生選課”表SC由學號(Sno)、課程號(Cno)、成績(Grade)三個屬性組成,可記為: SC(Sno,Cno,Grade)(SNO, CNO)為關鍵字。完成下列操作:
1、建立一個“學生”表Student,它由學號Sno、姓名Sname、性別Ssex、年齡Sage、所在系Sdept五個屬性組成,其中學號屬性不能為空,并且其值是唯一的。
2、查考試成績有不及格的學生的學號
3、將學生95001的年齡改為22歲
4、計算1號課程的學生平均成績
5、創建一存儲過程getDetailByName,通過輸入參數學生姓名(如“章山“),篩選出該學生的基本信息,對不存在此學生姓名的輸入值,必須作一檢測,打印信息“不存在此學生”。參考答案
一、選擇題(每題2分,共30分)
1、A
2、C
3、B
4、D
5、D
6、C
7、B
8、C
9、A
10、C
11、B
12、B
13、B
14、D
15、C
二、填空題(每空2分,共30分)
1、本地存儲過程、遠程存儲過程
2、事務日志備份、差異備份、文件和文件組備份
3、UPDATE類型、DELETE類型
4、數據控制語言(或DCL)、數據操作語言(或DML)
5、隔離性、持久性
6、Connection Command和Recordset7、7 ***
三、簡答題(每題5分,共20分)
1、什么要創建索引?(4分)
答:創建索引可以大大提高系統的性能。第一,通過創建唯一性索引,可以保證每一行數據的唯一性。第二,可以大大加快數據的檢索速度,這也是所以的最主要原因。第三,可以加速表與表之間的連接,特別是實現數據的參考完整性方面特有意義。第四,在使用ORDER BY和GROUP BY子句進行數據檢索時,同樣可以顯著減少查詢中分組和排序的時間。第五,通過使用索引,可以在查詢過程中,使用優化隱藏器,提高系統性能。
2、簡述INSERT觸發器的工作原理(6分)
答:當向表中插入數據時,INSERT觸發器觸發執行。當INSERT觸發器觸發時,新的記錄增加到觸發器表中和inserted表中。該inserted表是邏輯表,保存了所插入記錄的拷貝,允許用戶參考INSERT語句中的數據。觸發器可以檢查inserted表,來確定該觸發器的操作是否應該執行和如何執行。在inserted表中的哪些記錄,總是觸發表中一行或多行記錄的冗余。
3、根據商品庫和教學庫,按照下列所給的每條SQL查詢語句寫出相應的功能,或者按照下列所給的每種功能寫出相應的SQL查詢語句。(每小題2分,共10分)
1.從商品庫中查詢出所有商品的不同產地。
2.從教學庫中查詢出只選修了一門課程的全部學生。
3.從教學庫中查詢出最多選修了2門課程(含未選任何課程)的全部學生。4.select 分類名,max(單價)as 最高單價 from 商品表1 group by 分類名
5.select distinct 學生.* from 學生,選課
where 學生.學生號=選課.學生號 and 課程號=any(select 課程號 from 學生,選課
where 學生.學生號=選課.學生號 and 姓名=@m1)
四、設計題(每題4分,共20分)
1、建立一個“學生”表Student,它由學號Sno、姓名Sname、性別Ssex、年齡Sage、所在系Sdept五個屬性組成,其中學號屬性不能為空,并且其值是唯一的。CREATETABLE Student(Sno CHAR(5)NOT NULL UNIQUE, Sname CHAR(20), Ssex CHAR(1), Sage INT, Sdept CHAR(15));
2、查考試成績有不及格的學生的學號 SELECT DISTINCT Sno FROM Course WHERE Grade <60;
3、將學生95001的年齡改為22歲 UPDATE Student SET Sage=22 WHERE Sno='95001';
4、計算1號課程的學生平均成績 SELECT AVG(Grade)FROM SC WHERE Cno='1';
5、創建一存儲過程getDetailByName,通過輸入參數學生姓名(如“章山”),篩選出該學生的基本信息,對不存在此學生姓名的輸入值,必須作一檢測,打印信息“不存在此學生”。
Create procedure getDetailByName @name nvarchar(10)AS IF(SELECT COUNT(*)FROM Student WHERE Sname = @Name)> 0 SELECT * FROM Student Where Sname = @Name ELSE SELECT 警示 = '不存在姓名為 ' + @Name + ' 的學生資料'
第三篇:數據庫試題及答案_
筆試樣卷一
參考答案
一、簡答題(25分)
1.數據庫階段數據管理的主要特點是什么? 2.
解釋DB、DBMS、DBS三個概念?
3.什么是物理數據獨立性和邏輯數據獨立性? 4.
試說明DBMS的主要功能?
5.在ER模型轉換為關系模型時,聯系類型要根據不同的情況作不同的處理,試說明之。
二、計算題(20分)
1.設有關系R和S R: S:
A B C A B C 3 6 7 3 4 5 2 5 7 7 2 3 7 3 4 4 4 3 列表計算R∪S、R-S、R×S、π3,2(S)、δB<5(R)。(5分)2.
設有三個關系
S(SNO, SNAME, AGE, SEX, SDEPT)SC(SNO, CNO, GRANDE)C(CNO, CNAME, CDEPT, TNAME)試用關系代數表達式表示下列查詢
(1)檢索LIU老師所授課程的課程號、課程名(2)檢索年齡大于23歲的男學生的學號和姓名
(3)檢索學號為S3的學生所學課程的課程名和認課教師姓名(4)檢索WANG同學不學的課程的課程號
(5)檢索至少選修了兩門課程的學生的學號(10分)
三、設有三個基本表(45分)
S(SNO, SNAME, AGE, SEX, SDEPT)SC(SNO, CNO, GRANDE)C(CNO, CNAME, CDEPT, TNAME)1.
試用T-SQL的查詢語句表達下列查詢(1)檢索LIU老師所授課程的課程號、課程名(2)檢索年齡大于23歲的男學生的學號和姓名
(3)檢索學號為S3的學生所學課程的課程名和認課教師姓名(4)檢索WANG同學不學的課程的課程號
(5)檢索至少選修了兩門課程的學生的學號(10分)2.
試用T-SQL的查詢語句表達下列查詢(1)統計有學生選修的課程的門數(2)求選修C4課程的學生的年齡
(3)求LIU老師所授課程的每門課程的學生的平均成績(4)統計每門課程的學生選修人數
(5)求年齡大于所有女同學年齡的男學生的姓名和年齡(10分)3.
試用T-SQL更新語句完成下列更新操作
(1)往表S中插入一個學生資料(‘S9’, ‘WU’, 18)
(2)在表S中檢索每一門課程成績都大于等于80分的學生的學號、姓名、性別,把檢索結果插入另一個已存在的表STU(SNO, SNAME, SEX)(3)刪除SC表中WANG同學的選課資料(4)把低于總平均分的女同學的成績提高5%(5)把表SC中C4課程的成績提高5%(10分)
四、設有關系模式R(ABCD),R上的FD集F={ AB→CD, A→D},試說明R不是2NF的理由,并把R分解成2NF模式集。(10分)
數據庫應用筆試樣卷一參考答案
一、簡答題(25分)
1.采用數據模型表示復雜的數據結構;有較高的數據獨立性;為用戶提供了方便的用戶接口;提供數據控制功能;增加了系統的靈活性。
2.DB(數據庫):存儲在計算機內有組織的、統一管理的相關數據的集合。DBMS(數據庫管理系統):是位于用戶與操作系統之間的數據管理軟件。
DBS(數據庫系統):是實現有組織的、動態的存儲大量關聯數據,以方便用戶訪問的計算機硬件、軟件和株距資源組成的計算機系統。
3.物理數據獨立性:內模式的修改,只需對模式/內模式映象做相應修改,而不需修改概念模式。邏輯數據獨立性:概念模式的修改,只需對外模式/模式映象做相應修改,而不需修改外模式。4.DBMS的主要功能:
數據定義(DDL):三級結構、兩級映象、完整性約束等。數據操縱(DML):檢索、更新。
數據保護:數據恢復、并發控制、完整性控制、安全性控制等。數據維護:數據載入、轉換、存儲、、性能監控等。
數據字典(DD):存儲三級結構定義的數據庫稱為DD,即系統數據庫。5.實體:實體類型→關系模式。聯系:
1∶1:將聯系臵入任一端實體,并加入另一端實體主鍵為外鍵。1∶N:將聯系臵入多端實體,并加入一端實體主鍵為外鍵。M∶N:建立新關系模式,主鍵為兩端實體的主鍵,并為外鍵。
二、計算題(20分)1.R∪S: A B C 3 6 7 2 5 7 7 3 4 4 4 3 4 5 7 2 3 R-S: A B C 3 6 7 2 5 7 7 3 4 4 4 3 R×S
A B C π3,2(S): C B 5 3 4 2 δB<5(R): A B C 7 3 4 4 4 3 2.(1)∏cno,cname(σTNAME=’ LIU’(C))(2)∏sno,sname(σage=23 ∧sex=’ 男’(S))(3)∏cname,tname(σsno=’s3’(S)∞SC∞C)(4)∏cno(C)-∏cno(σsname=’WANG’(SC∞S))(5)∏sno(σ1=4∧2<>5(SCXSC))
三、(45分)1.(1)SELECT CNO,CNAME FROM C WHERE TNAME=’ LIU’
(2)SELECT SNO,SNAME FROM S WHERE AGE>23 AND sex=’ 男’(3)SELECT C.CNO, TNAME FROM S,SC,C WHERE SNO=’S3’ AND C.CNO=SC.CNO=’c03’ AND S.SNO=SC.SNO(4)select cno from c where not exists(select cno from sc where c.cno=sc.cno and sname='WANG')(5)select sc1.sno from sc as sc1,sc as sc2 where sc1.sno=sc2.sno and sc1.cno<>sc2.cno 2.(1)select ,count(*)as num from sc group by cno(2)SELECT SNO,AGE FROM S,SC WHERE S.SNO=SC.SNO AND CNO=’C4’
(3)select cno, avg(score)from c,sc WHERE TNAME=’ LIU’ AND C.CNO=SC.CNO group by cno(4)select cno,count(*)from sc(5)select sname,age from s where SEX='男' and age>all(select age from s where sex='女')3.(1)INSERT INTO S(sno, sname, age)VALUE(‘S9’, ‘WU’, 18)
(2)select sno,sname,.seg into stu from s where score>=80 and s.sno=sc.sno(3)delete from sc where sc.sno=(select sno from s where sname=’wang’ and s.sno=sc.sno)
(4)update sc set score=score*(1+0.05)from s,sc where sex=’ 女’ and s.sno=sc.sno and score<(select avg(score)from sc)(5)update sc set score=score*(1+0.05)from where cno=’c4’
四、(10分)
設有關系模式R(ABCD),R上的FD集F={ AB→CD, A→D},試說明R不是2NF的理由,并把R分解成2NF模式集。(10分)
1、侯選鍵為AB
2、由AB→CD 可知AB→C,AB→D 又由于A→D
故D局部依賴于侯選鍵AB 所以R不是2NF
3、R1(AB,C)R2(A,D)
筆試樣卷二
參考答案
一、選擇題(10X2=20分)
1.數據完整性不包括
a)主體完整性 b)實體完整性 c)參照完整性 d)自定義完整性 2.
常用的三種結構數據模型不包括
a)關系模型 b)實體聯系模型 c)層次模型 d)網狀模型
3.關系的集合運算不包括
a)交 b)并 c)和 d)差 4.
關系的專門關系運算不包括
a)選擇 b)投影 c)連接 d)積 5.
事務的屬性包括
a)原子性、安全性、隔離性、持久性 b)原子性、一致性、安全性、持久性
c)原子性、一致性、隔離性、安全性 d)原子性、一致性、隔離性、持久性
6.SQL Server系統數據庫不包括
a)master b)tempdb c)student d)model 7.
SQL Server中,數據庫主數據文件擴展名為
a)ldf b)mdf c)ndf d)dbf 8.
SQL Server中,索引類型包括
a)聚集索引和非聚集索引 b)主索引和次索引 c)單索引和復合索引 d)內索引和外索引 9.
SQL的數據操縱命令是
a)select、insert、delete、update b)create、select、insert、delete c)create、insert、delete、update d)select、insert、delete、alter 10.SQL Server系統的觸發器包括
a)select、insert、delete b)insert、delete、update c)select、insert、update d)select、delete、update
二、填空題(10X2=20分)
1.數據管理經歷了、、三個階段。2.
DB的中文含義是、DBMS的中文含義是、DBS的中文含義是、DBA的中文含義是。3.
數據庫的三級體系結構為、、,兩級映象為、,兩級數據獨立性為、。4.
SQL主要由、、三類語句組成。5.
數據庫設計通常由規劃、需求分析、、、、數據庫實現、數據庫運行與維護7個階段構成。
三、應用題(3X5=15分)
設關系模式R,其中U={A,B,C,D},F={AB→C,C→A,C→D,D→B},試問:
1.關系R各屬性的閉包。2.
關系R的所有候選碼。
3.判斷關系R是否屬于3NF,并解釋你的結論。
四、綜合題(45分)
某學校要對學生成績進行計算機管理。該學校有若干學生,每個學生有學號、班級、姓名、性別、出生日期、地址。開設的課程需要管理課程編號、課程名稱、學分和學生選修該課程后的成績等信息。該學校規定:一個學生可以有選修多門課程,一門課程可以有多名學生選修。
1.畫出此管理系統的ER模型。
2.簡述ER模型向關系模式轉換的一般方法。3.
將以上ER模型轉化為關系模式,包括主鍵、外鍵。4.
試用SQL語句表示以下數據編輯:
①
將新生“張三”插入學生表(其它屬性自設)。②
刪除選課表中學號為“0001”的學生的選課信息。③
將所有選修了課程編號為“c001”的學生成績加5分。④
將所有選修了“數據庫”課程的學生成績提高5分。⑤
把低于總平均分的女同學的成績提高5%。5.
試用代數表達式表示以下查詢:
①
查詢全校所有學生的學生表的所有信息。
②
查詢全校所有地址為“西安”的學生的學號、姓名、性別。③
查詢所有選修了“數據庫”課程的學生的學號、姓名、成績。④
查詢選修了所有課程的學生的學號、姓名、性別。⑤
查詢選修了2門課程以上的學生的學號、姓名、性別。⑥
查詢學號為“0001”的學生沒有選修的課程編號、課程名稱。6.
試用SQL語句表示以下查詢:
①
查詢全校所有學生的學生表的所有信息。
②
查詢全校所有地址為“西安”的學生的學號、姓名、性別。③
查詢所有選修了“數據庫”課程的學生的學號、姓名、成績。④
查詢每個學生所選課程的數量、總分、最高、最低分 ⑤
查詢選修了所有課程的學生的學號、姓名、性別。⑥
查詢選修了2門課程以上的學生的學號、姓名、性別。
數據庫應用筆試樣卷二參考答案
一、選擇題(10X2=20分)
1.a)2.b)3.c)
4.d)5.d)6.c)7.b)8.a)9.a)10.b)
二、填空題(10X2=20分)
11.人工管理階段、文件系統階段、數據庫階段三個階段。12.數據庫、數據庫管理系統、數據庫系統、數據庫管理員。
13.數據庫的三級體系結構為外模式、概念模式、內模式,兩級映象為外模式/模式映象、模式/內模式映象,兩級數據獨立性為物理數據獨立性、邏輯數據獨立性。14.SQL主要由 數據定義、數據操縱、數據控制三類語句組成。
15.數據庫設計通常由規劃、需求分析、概念設計、邏輯設計、物理設計、數據庫實現、數據庫運行與維護7個階段構成。
三、應用題(3X5=15分)
16.A+=A,B+=B,C+=ABCD,D+=DB,(AB)+= ABCD 17.關系R的所有候選碼。AB及C 18.關系R不屬于3NF。
因為非候選碼傳遞依賴于侯選鍵AB
四、綜合題(45分)
某學校要對學生成績進行計算機管理。該學校有若干學生,每個學生有學號、班級、姓名、性別、出生日期、地址。開設的課程需要管理課程編號、課程名稱、學分和學生選修該課程后的成績等信息。該學校規定:一個學生可以有選修多門課程,一門課程可以有多名學生選修。
1.ER模型。
2.ER模型向關系模式轉換的一般方法。實體:
實體類型→關系模式。聯系:
1∶1:將聯系臵入任一端實體,并加入另一端實體主鍵為外鍵。1∶N:將聯系臵入多端實體,并加入一端實體主鍵為外鍵。M∶N:建立新關系模式,主鍵為兩端實體的主鍵,并為外鍵。3.關系模式
s(sno,class,sname,sex,birthday,addr)c(sno,cname,credit)sc(sno, cno,score)4.試用SQL語句表示以下數據編輯:
1.INSERT INTO S(sno, class, sname, sex)VALUE(‘0025’, ‘982’, ‘張三’, ‘男’)2.DELETE FROM SC WHERE SNO=‘0001’AND S.SNO=SCSNO 3.update sc set score=score+5 from where cno=’c001’ 4.update sc set score=score*(1+0.05)from c,sc where sname=’ 數據庫’ and c.cno=sc.cno 5.update sc set score=score*(1+0.05)from s,sc where sex=’ 女’ and s.sno=sc.sno and score<(select avg(score)from sc)
5.試用代數表達式表示以下查詢:
1.select * from s 2.select sno,sname,sex from s where address like '%西安% 3.select sc.sno,sname, score from s,c,sc where sc.sno=s.sno and sc.cno=c.cno and cname='數據庫' 4.select sno,sname,sex from s where not exists(select * from c where not exists(select * from sc where sc.sno=s.sno and sc.cno=c.cno))5.select sc1.sno from sc as sc1,sc as sc2 where sc1.sno=sc2.sno and sc1.cno<>sc2.cno 6.select cno,cname from c where not exists(select cno from sc,s where s.sno=sc.sno and c.cno=sc.cno and sno='0001')。
6.試用SQL語句表示以下查詢:
1.select * from s 2.select sno,sname,sex from s where address like '%西安% 3.select sc.sno,sname, score from s,c,sc where sc.sno=s.sno and sc.cno=c.cno and cname='數據庫' 4.select sno,count(*)as num,sum(score), max(score), min(score)from sc group by sno 5.select sno,sname,sex from s where not exists(select * from c where not exists(select * from sc where sc.sno=s.sno and sc.cno=c.cno))6.select sc1.sno from sc as sc1,sc as sc2 where sc1.sno=sc2.sno and sc1.cno<>sc2.cno
筆試樣卷三
參考答案
一、填空題(30分)
1.數據完整性包括、、。2.
SQL Server系統數據庫包括、、、。3.
SQL Server中,數據庫主數據文件擴展名為,次數據文件擴展名為,事務日志文件擴展名為。4.
SQL Server數據定義語句包括、、。
5.ER模型的中文名稱為。6.
經典的結構數據模型包括、、。
7.專門的關系運算包括、、、。8.
SQL Server數據操縱命令包括、、、。
9.使用存儲過程的目的是。10.
數據庫索引包括、。
11.數據庫系統3級結構包括、。
二、設有學生成績庫,包含三張表:
學生(學號,班級,姓名,性別,出生日期,地址,電話,信箱)課程(課程編號,課程名稱,學分)選課(學號,課程編號,成績)用SQL語句完成以下操作(50分)。
1、刪除所有成績為NULL的學生選課信息。
2、將所有不及格課程的成績加5分。
3、將所有“數據庫應用”課程的成績加5分。
4、查詢所有課程的所有信息。
5、查詢所有學生的姓名、性別。
6、查詢所有男生的姓名、年齡。
7、查詢所有學生的平均成績,并按平均成績排名次。
8、查詢所有選修了“數據庫應用”課程的學生的學號、姓名和該課成績。
9、查詢張三同學沒有選修的課程編號、課程名稱。
10、查詢所有學生都選修的課程編號、課程名稱。
三、關系模式R(ABCD),F={AB→C,C→A,C→D,D→B}(20分)
1、關系R的所有候選碼是什么?
2、R是否屬于3NF,解釋你的結論。
數據庫應用筆試樣卷三參考答案
一、填空題(30分)
1.數據完整性包括 實體完整性、參照完整性、用戶定義完整性。2.SQL Server系統數據庫包括 master、model、msdb、tempdb。
3.SQL Server中,數據庫主數據文件擴展名為mdf,次數據文件擴展名為 ndf,事務日志文件擴展名為ldf。
4.SQL Server數據定義語句包括 create、drop、alter。5.ER模型的中文名稱為實體聯系模型。
6.經典的結構數據模型包括 層次、網狀、結構。7.專門的關系運算包括 選擇、投影、連接、除。
8.SQL Server數據操縱命令包括 insert、delete、update、select。9.使用存儲過程的目的是 減輕網絡流量、提高效率。10.數據庫索引包括聚集、非聚集。
11.數據庫系統3級結構包括外部級、概念級和內部級。
二、設有學生成績庫,包含三張表:
學生(學號,班級,姓名,性別,出生日期,地址,電話,信箱)課程(課程編號,課程名稱,學分)選課(學號,課程編號,成績)用SQL語句完成以下操作(50分)。
1.delete from sc where score is null 2.update sc set score=score+5 from where score<60 3.update sc set score=score+5 from c,sc where sname=’ 數據庫’ and c.cno=sc.cno 4.select * from c 5.select sname.sex from s 6.select sname.year(getdate())-year(birthday)as age from s where sex=’ 男’ 7.select sno,avg(score)from sc group by sno order by 2 desc 8.select sc.sno,sname,cname,score from s,c,sc where sc.sno=s.sno and sc.cno=c.cno and cname='數據庫' 9.select cno,cname from c where not exists(select cno from sc,s where c.cno=sc.cno and c.sno=s.sno and sname='張三')10.select cno,cname from c where not exists(select * from s where not exists(select * from sc where sc.sno=s.sno and sc.cno=c.cno))
三、關系模式R(ABCD),F={AB→C,C→A,C→D,D→B}(20分)
1.關系R的所有候選碼。AB及C 2.關系R不屬于3NF。因為非候選碼傳遞依賴于侯選鍵AB
數據庫試題及答案 兩套 收藏 數據庫原理試題(A卷)
一、填空題(每空 1 分,共 20 分)
1.對于一個國家來說,數據庫的建設規模、數據庫信息量的 _____________ 和 _____________ 已成為這個國家信息化程度的 ________________。2.數據模型通常由: ________________、________________ 和 _____________ 三部分組成。
3.游標的功能是把 ________________ 轉換為 ________________。4.最常用的數據庫的恢復技術是_____________ 和 _____________。
5._____________ 模型是現實世界到 _____________ 機器模型的中間橋梁。6.數據獨立性是指_____________ 和_____________ 獨立性。
7.數據庫應用程序開發工具目前有 ________________、_________________、________________、和 ________________ 等。
8.目前數據庫產品有 SQL Server 和 ________________、________________ 等。
二、選擇題(每小題 1 分,共 10 分)
1.關于冗余數據的敘述中,不正確的是()。A .冗余的存在容易破壞數據庫的完整性 B .冗余的存在給數據庫的維護增加困難.C .不應該在數據庫中存儲任何冗余數據 D .冗余數據是指可由基本數據導出的數據 2.概念模型獨立于()。
A . ER 模型 B .硬件設備 C . DBMS D .操作系統 3.下列敘述正確的為()。
A.主碼是一個屬性,它能唯一表識一列 B.主碼是一個屬性,它能唯一表識一行
C.主碼是一個屬性或屬性集,它能唯一表識一列 D.主碼是一個屬性或屬性集,它能唯一表識一行
4.數據庫三級模式體系結構的劃分,有利于保持數據庫的()。
A .數據獨立性 B .數據安全性 C .結構規范化 D .操作可行性 5.一個關系中的候選關鍵字()。
A .至多一個 B .可多個 C .必須多個 D .至少 3 個 6.常用的關系運算是關系代數和()。
A .集合代數 B .邏輯演算 C .關系演算 D .集合演算 7.在基本層次聯系中,記錄型之間的聯系是()。
A .一對一聯系 B .一對多聯系 C .多對多聯系 D .多對一聯系 8.并發操作會帶來哪些數據不一致性()。
A .不可修改、不可重復讀、臟讀、死鎖 B .不可重復讀、臟讀、死鎖 C .丟失修改、臟讀、死鎖 D .丟失修改、不可重復讀、臟讀 9.在數據庫與宿主語言之間傳遞信息是通過()。
A.全局變量 B.共性變量 C.公共數據區 D.系統緩沖區 10.數據庫的()是指數據的正確性和相容性。A.安全性 B.完整性 C.并發控制 D.恢復
三、判斷題(每小題 1 分,共 10 分 , 對不正確的要寫出理由)1.子模式 DDL 是用來描述數據庫的物理存儲結構的。()2.同一個關系模型的任兩個元組值不能全同。()3.基本表是本身獨立存在的表,在 SQL 中一個關系就對應基本表。()4.數據流程圖(DFD)是用于描述結構化方法中詳細設計階段的工具。()5.若數據庫中只包含成功事務提交的結果則此數據庫成為處于安全狀態()6.事務的持續性是指事務中包括的所有操作,要么都做,要么都不做。()7.DB 用戶的權限可分為具有 DBA 特權的用戶和一般 DB 用戶()8.數據庫的網狀模型應滿足的條件是必須有兩個以上的結點。()
9.CREAT TABLE 命令可直接定義主碼、外碼、參照表,系統就能夠自動地執行實體完整性和參照完整性規則。()
10.分布式數據庫數據獨立性包括數據的邏輯獨立性、數據的物理獨立性和數據分布獨立性。()
四、(每小題 3 分,共 15 分)設有關系模式,其中
(1)計算。
(2)求 F 的最小等價依賴集。(3)求出 的關鍵字。
(4)將 R 分解使其滿足 BCNF 且無損連接。
(5)將 R 分解使其滿足 3NF 且無損連接與保持函數依賴。
五、綜合題(25 分)
1.將 R ∪ S、R-S 兩種關系代數基本運算表示為域關系演算表達式。(5 分)2.關系數據庫中有下列三個關系:
商店(商店代號,商店名,店員人數,所在城市)商品(商品編號,商品名,價格)商店--商品(商店代號,商品編號,商品數量)(1)用 ALPHA 語言完成下列操作:(4 分)檢索銷售全部商品的商店姓名。
(2)用關系代數完成下列操作:(4 分)檢索店員人數大于 23 商店代號和商店名。(3)試用 SQL 語句寫出下列查詢:
(a)找出店員人數不超過 100 人或者在長沙市的所有商店的代號和商店名。(4 分)(b)找出供應書包的商店名。(4 分)
(c)找出至少供應商品代號為 233 的商店所供應的全部商品的商店名。(4 分)
六、設計題(每小題 10 分,共 20 分)
某市人才交流中心擬建立人才信息交流網。現有資料:每個前來登記的個人需填寫的《人才入庫登記表》(見附表 1);每個前來登記的企業需填寫的《企業信息登記表》(見附表 2)。
試設計人才、崗位和企業的實體聯系圖,并將概念模型轉換為關系模式。附表 1 :人才入庫登記表 個人編號: 登記日期 姓名
性別
出生日期 身份證號 畢業院校
專業
學歷 聯系電話
電子郵件
附表 2 :企業信息登記表 企業編號: 登記日期 企業名稱
地址
企業網址 崗位需求 聯系人
聯系電話
電子郵件 企業簡介
數據庫原理試題答案(A卷)一.填空題(每空 1 分,共 20 分)
1.安全性,完整性,衡量標準
2.數據結構,數據操作,完整約束。3.集合記錄,單記錄
4.數據轉儲,登錄日志文件 5.概念,數據模型 6.物理,邏輯
7.C++, VB, Def, C# 8.Oracle, Access
二、單項選擇題(每小題 1 分,共 10 分)
C,C,D,A,B,C,B,D,A,B
三、判斷題(每小題 1 分,共 10 分)
F,T,T,F,T,F,T,T,T
四、(每小題 3 分,共 15 分)
? 令 x={AD}, x(0)=AD, x(1)=ACD, x(2)=ACD, 故(AD)+ =ACD ? 將 F 中依賴右部屬性單一化: F 1 : A C C A B A B C D A D C 在 F 1 中去掉多余的函數依賴: 因為 B A,A C 所以 B C 是多余的 又因為 D A,A C 所以 D C 是多余的 F 2 : A C C A B A D A 函數依賴集的最小集不是唯一的,本題答案不唯一。
因為 F 2 中所有依賴的左部都是單屬性,所以不存在依賴左部多余的屬性。所以 F : A C C A B A D A(3)因為 DB 在 F 中的又函數依賴的右部中均未出現,所以候選關鍵字一定包含 BD,而(BD)+ =ABCD 因此 BD 是 R 惟一的候選關鍵字。(4)考慮 A C,所以 AC 不是 BCNF(AC 不包含候選關鍵字 BD),將 ABCD 分解為 AC 和 ABD。AC 已是 BCNF,進一步分解 ABC 選擇 B A,把 ABD 分解為 AB 和 BD,此時 AB 和 AD 均為 BCNF,所以 ρ ={AC,BA,DA,BD}(5)Ri A B
C D AC BA DA a 1 a 1 a 1 a 2 a 3 a 3 a 3
a 4
五、,R US={t|P(t)US(t)`}
R-S={t|P(t)?S(t)`}(5 分),(1)SHOP(sno,sna,snu,city)
GOODS(gno,gna,price)
SHOP-GOODS(sno,gno,num)
Range GOODS rx
SHOP-GOODS ry
GET W(SHOP.SNA)rx ry(ry.gno=rx.gno shop.sno=ry.sno)
(2)∏ sno,sna(δ snu>23(SHOP))(3 分)
(3)(a)SELECT SNO,SNA
FROM SHOP
WHERE CITY=' 長沙 'OR SNO<=100(3 分)
分)((b)SELECT SHOP.sna
FROM SHOP,SHOP-GOODS,GOODS
WHERE SHOP.sno=SHOP-GOODS.sno AND GOODS.gna=' 書包 '
SHOP-GOODS.gno =GOODS.gno(4 分)
(c)SELECT sna
FROM SHOP sx
WHERE NOTEXIST
(SELECT *
FROM GOODS-SHOP sy
WHERE GOODS-SHOP.sno=' 223' AND NOTEXIST
(SELECT *
FROM SHOP-GOODS sz
WHERE sy.gno=sz.gno AND sx.sno=sz.sno))(5 分)
六、設計題
問題一: 設計人才、崗位和企業的實體聯系圖(5 分)
問題二: 轉換關系模式(5 分)
(b)個人編號,崗位,最低薪水,登記日期
(c)企業編號,崗位,專業學歷,薪水,備注,登記日期
(d)個人編號,姓名,性別,出生日期,身份證號,畢業院校,專業,學歷,證書,名稱,聯系電話,電子郵件,個人簡歷,特長
(e)證書名稱,證書編號
企業(企業編號,企業名稱,聯系人,聯系電話,地址,企業網址,電子郵件,企業簡介)
數據庫原理試題(B卷)
一、填空題(每空 2 分,共 20 分)
1、關系中主碼的取值必須唯一且非空,這是由 ___________ 完整性規則決定的。
2、當數據庫被破壞后,如果事先保存了數據庫副本和 ________________,就有可能恢復數據庫。
3、數據庫的 ____________ 是指數據庫的正確性和相容性。
4、關系數據操作語言的特點是:操作對象與結果均為 ___________、操作的非過程性強、語言一體化、并且建立在數學理論基礎之上。
5、SQL 是一種介于關系代數和 _____________ 之間的結構化的查詢語言。
6、對于每一個外模式,數據庫系統都有一個 _______________ 映象,它定義了該外模式與模式之間的對應關系。
7、視圖是一個需表,它一經定義就可以和基本表一樣被查詢,但 _________ 操作將有一定的限制。
8、數據倉庫是一個面向主題的、_____________、不可更新的、隨時間不斷變化的數據集合。
9、避免活鎖的簡單方法是采用 ________________ 的策略。
10、知識庫系統和主動數據庫系統是將數據庫技術和 ______________ 技術相結合產生的。
二、選擇題(每小題 1 分,共 10 分)
1、SQL 中,下列涉及空值的操作,不正確的是()
A . AGE IS NULL B . AGE IS NOT NULL C . AGE=NULL D . NOT(AGE IS NULL)
2、關系數據模型的三個組成部分中,不包括()
A .完整性規則 B .數據結構 C .數據操作 D .并發控制
3、DB, DBMS 和 DBS 三者間的關系是()
A . DB 包括 DBMS 和 DBS B . DBS 包括 DB 和 DBMS C . DBMS 包括 DBS 和 DB D . DBS 與 DB、DBMS 無關
4、數據庫的并發操作可能帶來的問題包括()
A .丟失更新 B .數據獨立性會提高 C .非法用戶的使用 D .增加數據的冗余度
5、并發事務的交叉執行破壞了事務的()
A .原子性 B .隔離性 C .一致性 D .永久性 6、3NF()規范化為 BCNF。
A .消除非主屬性對碼的部分函數依賴 B .消除非主屬性對碼的傳遞函數依賴 C .消除主屬性對碼的部分和傳遞函數依賴 D .消除非平凡且非函數依賴的多值依賴
7、()是長期存儲在計算機內的有組織,可共享的數據集合。
A .數據庫管理系統 B .數據庫系統 C .數據庫 D .文件組織
8、一個 1 : n 聯系可以轉換為一個獨立的關系模式,關系的碼為()
A .實體的碼 B.各實體碼的組合 C.n 端實體的碼 D.每個實體的碼
9、在數據庫設計中,將 ER 圖轉換成關系數據模型的過程屬于()
A.需求分析階段 B.邏輯設計階段 C.概念設計階段 D.物理設計階段
10、關系完備的系統是指()。
A.僅支持關系數據結構,不支持集合級的操作 B.僅支持關系數據結構和三種關系操作
C.支持關系數據結構和所有的關系代數操作 D.支持關系模型的所有特征
三、簡答題(每小題 5 分,共 20 分)、數據庫系統中的常見故障有那些?、簡述數據模型的三個組成部分。、所有的視圖是否都可以更新?為什么?、什么樣的并發調度是正確的調度?
四、(共 10 分)事務 T1 和 T2 同時對 A 的值操作。A 的初值是 50,事務 T1 對 A 的值減 10,事務 T2 對 A 的值加倍,1、若這兩個事務并發執行,舉例可能結果。
2、請給出一個可串行化調度,并給出執行結果。
五、(共 10 分)對學生-課程數據庫有如下的查詢:
SELECT Sname
FROM Student, Cource , SC
WHERE Student.Sno=SC.Sno AND SC.Cno=Course.Course.Cno AND Course.Cname=' 數據庫 '
此查詢要求選修了數據庫的所有學生的姓名。
(1)試畫出用關系代數表示的語法樹;
(2)對原始的語法樹進行優化,畫出優化后的標準語法樹。
六、(共 20 分)設有學生-課程數據庫,其數據庫模式為 : 學生 S(學號 SNO,姓名 SN,所在系 SD,年齡 SA)、課程 C(課程號 CNO,課程姓名 CN,先修課號 PCNO)、學生選課 SC(學號 SNO,課程號 CNO,成績 G)。、試用關系代數,ALPHA 語言語言分別寫出下列查詢:
(1)查詢選修了 2 號課程的學生的學號;(4分)
(2)求選讀了‘數據庫概論'的學生學號和姓名;(4分)
(3)求選修了全部課程的學生學號、姓名。(4分)、試用 SQL 語言寫出下列查詢:
(1)查詢學生總人數;(2分)
(2)查詢選修了 5 門以上課程的學生學號;(3分)
(3)刪除‘數據結構'課程及所有對它的選課情況。(3分)
七、綜合題(共 10 分)
設有一局部應用,包括 3 個實體“科室”,“醫生”,“病人”,且有以下事實:每位醫生屬于且僅屬于一個科室;每個科室可以聘用若干醫生,對每個醫生聘用時存有聘用期限和聘用日期;一個病人可以由不同的醫生為其診斷,每個醫生可以為若干病人診治,每次診斷存有就診日期。設科室的屬性包括科室代碼,科室名稱;醫生的屬性包括工號,姓名和職稱;病人的屬性包括姓名、年齡、工作單位。
1、試設計 E - R 圖,注明屬性和聯系類型。
2、將 E - R 圖轉換為等價的關系模型(包括關系名,屬性名和碼)。
數據庫原理試題答案(B卷)
一、填空題(每題 2 分,共 20 分)
1、實體
2、日志文件
3、完整性
4、關系
5、關系演算
6、外模式 / 模式
7、更新
8、集成的
9、先來先服務
10、人工智能
二、選擇題(每題 1 分,共 10 分)、C 2、D 3、B 4、A 5、B 6、C 7、C 8、C 9、B 10、C
三、簡答題(每題 5 分,共 20 分)、答案要點:數據庫系統中的常見故障有:事務內部的故障(事務故障)(1 分)、系統故障(1 分)、介質故障(2 分)、計算機病毒(1 分)。、答案要點:數據模型通常由數據結構(1 分)、數據操作(2 分)、完整性約束(2 分)三部分組成。、答案要點:不是所有的視圖都是可更新的(2 分);因為有些視圖的更新不能唯一地有意義地轉換成對相應基本表地更新(3 分)。、答案要點:多個事務的并發執行是正確的,當且僅當其結果與按某一次序串行執行它們時的結果相同(5 分)。
四、(共 10 分)、80,90、T 1 T 2
Slock A
讀 A = 50
Y = A
Unlock A
Xlock A
A=Y-10 Slock A
寫回 A = 40
等待
Unlock A 等待
讀 A = 40
Y = A
Unlock A
Xlock A
A=Y × 2
寫回 A = 80
Unlock A
五、(共 10 分)
六、(共 20 分)、關系代數:
(1)sno(cno =‘ 2 '(SC))(2分)
(2)Sno,Sn(Cn=' 數據庫概論 ')(2分)
(3)Sno,SN(S(Cno,sno(SC)÷ Cno(C)))(2分)
ALPHA 語言
? GET W(SC.SNO): SC.CNO=' 2'(2分)
? RANGE C X
SC Y
GET W(S.SNO.S.SN): X(Y(X.CNO=Y.CNO ^ Y.SNO=S.SNO ^ X.CN=' 數據庫概論 '
? RANGE C X
SC Y
GET W(S.SNO,S.SN): X(Y(Y.CNO=X.CNO ^ Y.SNO=S.SNO))(2分)、(1)SELECT COUNT(*)FROM STUDENT(2分)
(2)SELECT SNO FROM SC
GROUP BY SNO HAVING COUNT(*)>5(3分)
(3)DELECT FROM SC
WHERE SC.CNO IN(SELECT C.CNO FROM C WHERE CN=' 數據結構 ')
DELETE FROM C WHERE CN= ‘數據結構'(3分)
七、(共 10 分)
(5分)
科室(科室代碼,科室名稱)(1分)
醫生(工號,姓名,名稱,聘用日期,聘用期限,科室)(1分)
病人(病歷號,姓名,年齡,工作單位)(1分)
2分)(就診(醫生工號,病歷號,就診日期)(2分)
發表于 @ 2008年12月29日 09:41:00 | 評論(4)| 編輯| 舉報| 收藏
舊一篇:考試臨近——在即 | 新一篇:學習IT的情感生活 查看最新精華文章 請訪問博客首頁相關文章
數據庫概論筆記(第一天)數據庫原理及應用《數據庫系統概論》(第三版)數據庫數據基礎--基本概念數據庫的基本結構三個層次數據庫原理與應用數據庫設計的理論與方法收藏數據庫的主要特點hlf881216 發表于2009年12月9日 17:05:52 IP:舉報回復刪除 很好!!!riiiqpl 發表于2009年12月21日 21:51:03 IP:舉報回復刪除 看不到圖片呀匿名用戶 發表于2009年12月25日 13:02:42 IP:舉報回復刪除 zs84102030 發表于2009年12月28日 15:04:19 IP:舉報回復刪除 發表評論 表 情: 評論內容: 用 戶 名: 登錄 注冊 匿名評論 匿名用戶驗 證 碼: 重新獲得驗證碼 Copyright ? pengluer Powered by CSDN Blog
第四篇:數據庫期末考試_試題及答案
數據庫試題 4
一、填空題(共9題,每空1分,共15分)1.將數據庫從SQL Server實例中刪除,即在邏輯上將數據文件和日志文件與服務器相脫離,但文件并不從磁盤上刪除,此操作稱為_數據庫分離,可通過(數據庫附加)將其重新加載到SQL Server實例中。
2.SQL Server中用于服務器的所有初始化信息和系統級信息的的系統數據庫是master。3.打開數據庫student,使之成為當前數據庫,可以使用語句_ use student _。
4.使用T-SQL語句創建存儲過程時,若要求對存儲過程的定義文本進行加密,應使用with encryption子句。
5.若要刪除sutdent表的全部數據,數據刪除后不可撤銷,應使用語句truncate table student,,若想刪除student數據表,應使用語句drop table student。
6.若要對數據庫中的對象進行改名,就使用的系統存儲過程是sp_rename。
7.Sql Server的數據庫文件分為數據文件和日志文件,其中數據文件又分為主要數據文件、次要數據文件
8.在Sql Server中,按觸發的時機,觸發器可分為后觸發器和替代觸發器。9.在Sql Server的事務處理中,開啟一個事務可用Begin Transaction,提交事 和撤銷事務應使用Commit transaction,和rollback transaction。
二、簡答題(共3題,每題7分,共21分)
1.在數據庫端編程,主要有自定義函數、存儲過程和觸發器三種形式,請比較一下這三種方式的異同。
答:相同點:存儲過程、觸發器和自定義函數都能完成特定的功能,并且都存儲在服務器端的數據字典中。區別:存儲過程和自定義函數都可以定義參數,觸發器不可以;從調用方式上,存儲過程和自定義函數都需要由應用程序或其他功能體進行調用,而觸發器是當相應事件發生時自動執行,不須干預;自定義函數需要定義返回類型,函數體中至少要有一條用于返回返回值的語句,而存儲過程和觸發器不需要。
2.SqlServer有哪些系統數據庫,各自的作用是什么?
答:主要的系統數據庫有master、model、tempdb和msdb。其中Master數據庫保存了Sql Server2005的初始化信息和所有系統級信息。Master數據庫是Sql Server 2005中最重要的系統數據庫,對其更新和刪除操作而導致Master數據庫的不可用都將使得整個Sql Server2005系統無法啟動和運行。Model數據庫是用于保存所有用戶數據庫和Tempdb數據庫的模版。每當用戶創建數據庫的時候,Sql Server 2005將用Model數據庫提供的信息初始化被創建的數據庫。Msdb數據庫是Sql Server2005代理服務工作時使用的數據庫,用于為Sql Server代理服務在警報和作業等操作時提供存儲空間。Tempdb數據庫是一個臨時的系統數據庫,用于為所有臨時表、臨時存儲過程以及其他的臨時操作提供存儲空間。
3.數據庫中的常用完整性有幾種?在Sql Server主要通過什么方式實現?
答:視圖是一個虛擬表,并不存儲任何物理數據。視圖與真正的表很類似,也是由一組命名的列和數據行組成,其內容由查詢所定義。但是視圖并不是以一組數據形式存儲在數據庫中,數據庫中只存儲視圖的定義,而不存在視圖中的數據,視圖中的數據仍存儲在基本表中。當基本表中的數據發生變化時,從視圖中查詢出來的數據也隨之改變。視圖和表相比有獨特的優勢主要有以下幾個方面:(1)保證數據的安全。(2)簡化查詢操作。(3)保證數據的邏輯獨立性。
三、應用題(共6題,本題共54分。)
1.創建名為“Love”的數據庫,其中主數據文件為Lovedat.mdf,初始大小為8M,增長大小為1M,日志文件為Lovedat.ldf,初始大小是5M,最大存儲空間是30M,增長是5M。請寫出相應的SQL語句。(本題8分)Create database love on
log on(name=lovedat_log,filename='d:databaselovedat.ldf',size=5,Maxsize=30,filegrowth=5)
2.使用sql語句創建表authors,結構如下表所示(本題8分)列名 數據類型
N 大小
是否為空
姓名
默認值 說明
authorID int 4
編號(主鍵),自動增長
電話 地址(name=lovedat,filename='d:databaselovedat.mdf',size=8,Maxsize=unlimited,filegrowth=1)
authorName nvarchar 50 N Phone nvarchar 13 Y address nvarchar 255 Y
create table authors(authorid int identity(1,1)primary key not null, authorname nvarchar(50)not null,phone nvarchar(13)null, address nvarchar(255))
3.使用SQL語句對2中創建的authors表進行如下修改:(每小題5分,共15分)(1)添加Sex 列 char(2),city列 varchar(20)。
alter table authors add sex char(2)null,city nvarchar(20)null;(2)刪除city列。
alter table authors drop column city(3)修改作者信息表authors中的address列將該列的屬性的長度更改為500。alter table authors alter column address nvarchar(500)not null 4.系部表的創建語句如下,請完成以下操作(每小題5分,共15分)CREATE TABLE 系部
(系部代碼 char(2)CONSTRAINT pk_xbdm PRIMARY KEY, 系部名稱 varchar(30)NOT NULL,系主任 char(8))(1)將系部表中計算機系的系主任改為‘張中裕’
Update 系部 set 系主任=’ 張中裕’
where 系部名稱=’計算機系’
(2)將系部表中的系部名稱列中的‘系’全部更改為‘科學系’(使用replace函數,用法:replace(串1,串2,串3),其功能是將串1中的串2 替換為串3)Update 系部 set 系部名稱=replace(系部名稱,’系’,’科學系’)(3)在系部表中刪除系主任姓‘張’的系部數據
Delete from 系部 where 系主任 like ‘張%’
5.有二個數據表XS(xh, xm)和XS_KC(xh, kch, cj),用兩種方法,寫出如下查詢:“查找數據庫中所有學生的學號(xh)、姓名(xm)以及其所選修的課程號(kch)和成績(cj)”。(本題8分)
.(1)select xs.xh,xm,kch,cj from xs, xs_kc where xs.xh=xs_kc.xh;(2)select xs.xh,xm,kch,cj from xs join xs_kc on xs.xh=xs_kc.xh;
四、編程題(共2題,每題5分,共10分)
1.在數據表上機記錄中創建一個名為insert_sjkh的insert觸發器其作用是:當用戶在“上機記錄”表中插入記錄時,若“上機卡”表中沒有該上機號,則提示用戶不能插入,否則,提示記錄插入成功。(附:上機記錄表結構:(上機號 char(13),上機日期 datetime,開始時間 datetime,結束時間 datetime,上機狀態 bit)。上機卡表結構:(上機號 char(13),姓名??)
Create trigger insert_sjkh on dbo.上機記錄 for insert As begin Declare @asjkh char(13)Declare @acount int Select @asjkh=上機號from inserted Select @acount=count(*)from 上機卡where 上機號=@asjkh If @acount=0
Print '上機卡中無此卡號,不能插入' Else
Print '數據插入成功'
end
2.在student數據庫中的學生、課程注冊、課程表中創建一個帶參的存儲過程cjcx。其功能是:當任意輸入一個學生的姓名時,返回該學生的學號、選修的課程名和課程成績。然后使用存儲過程,查詢學生“陳斌”的學號、選修的課程名和課程成績。Create PROCEDURE [dbo].[cjcx]
AS BEGIN SELECT 學生.學號,課程.課程名,課程注冊.成績 from
學生,課程,課程注冊
where 學生.學號=課程注冊.學號 and 課程注冊.課程號=課程.課程號 and 姓名=@axm END 執行存儲過程cjcx,查詢“周紅瑜”的學號、選修的課程名和課程成績。Exec cjcx @axm=’張斌’ @axm char(8)
第五篇:數據庫試題及答案
《數據庫技術與應用》樣題
一、選擇題(共 30 分,1--20 每小題 1 分,21—25 每小題 2 分。下列各題 A)、B)、C)、D)四個選項中,只有一個選項是正確的)1 在 SQL Server 中,關于視圖的正確敘述是
A)視圖與數據庫表相同,用來存儲數據B)視圖不能同數據庫表進行連接操作 C)在視圖上不能進行更新操作D)視圖是從一個或多個數據庫表導出的虛擬表 2 SQL 是那幾個英文單詞的縮寫
A)Standard Query LanguageB)Structured Query Language C)Select Query LanguageD)以上都不是 3 不屬于 SQL Server 系統全局變量的是()。
A、@@ErrorB、@@ConnectionC、@@Fetch_StatusD、@Records 4 下面描述錯誤的是()
A、每個數據文件中有且只有一個主數據文件 B、日志文件可以存在于任意文件組中 C、主數據文件默認為 primary 文件組 D、文件組是為了更好地實現數據庫文件組織 5 SQL Server 數據庫文件有三類,其中主數據文件的后綴為()A、.mdfB、.ldfC、.ndfD、.idf
6、下面標識符不合法的是()
A、[my delete]B、_mybaseC、$moneyD、trigger1 7 下面字符串能與通配符表達式[ABC]%a 進行匹配的是()A、BCDEFB、A_BCDC、ABC_aD、A%
8、下面對索引的相關描述正確的是()列值唯一的列適合間索引 A、經常被查詢的列不適合建索引B、列值惟一的列適合建索引
C、有很多重復值的列適合建索引D、是外鍵或主鍵的列不適合建索引
9、在“連接”組中有兩種連接認證方式,其中在()方式下,需要客戶端應用程序連接 時提供登錄時需要的用戶標識和密碼。
A、Windows 身份驗證B、SQL Server 身份驗證 C、以超級用戶身份登錄時D、其他方式登錄時
10、索引是在基本表的列上建立的一種數據庫對象,它同基本表分開存儲,使用它能夠加快 數據的()速度。
A、插入B、修改C、刪除D、查詢在where子句中出現頻率較高的列應盡量創建索引
11、以下哪種情況應盡量創建索引()
A、在 Where 子句中出現頻率較高的列B、具有很多 NULL 值的列 C、記錄較少的基本表D、需要更新頻繁的基本表
12、域完整性用于保證給定字段中數據的有效性,它要求表中指定列的數據具有正確的數據 類型、格式和有效的()。
A、數據值B、數據長度C、取值范圍D、以上都不是 13 以下不屬于表之間定義關系的是
A)一對一關系B)一對多關系C)多對多關系D)少對多關系 14 目前數據庫有三種基本的數據模型是 ________。
A、層次模型、網絡模型、關系模型B、對象模型、網絡模型、關系模型
網絡模型、對象模型、層次模型D、層次模型、關系模型、對象模型 從“產品”表里查詢出價格高于產品名稱為“海天醬油”的產品的記錄,此 SQL 語句為 A、SELECT * FROM 產品WHERE 價格>海天醬油 B、SELECT * FROM 產品WHERE 價格>
(SELECT * FROM 產品WHERE 產品名稱>’海天醬油’)C、SELECT * FROM 產品WHERE EXISTS 產品名稱=’海天醬油’ D、SELECT * FROM 產品WHERE 價格>
(SELECT * FROM 價格WHERE 產品名稱=’海天醬油’)16. 不允許記錄中出現重復索引值的索引是。A)主索引B)主索引、候選索引、普遍索引
C)主索引和候選索引D)主索引、候選索引和唯一索引 數據庫應用系統是由數據庫、數據庫管理系統(及其開發工具)、應用系統、)和用(戶構成。
A)DBMSB)DBC)DBSD)DBA數據庫管理員
18、下面列出的數據庫管理技術發展的三個階段中,沒有專門的軟件對數據進行管理的是()。
I.人工管理階段 II.文件系統階段 III.數據庫階段 A.I 和 IIB.只有 IIC.II 和 IIID.只有 I
19、要保證數據庫的數據的邏輯獨立性,需要修改的是()。A.模式與外模式B.模式與內模式
C.三級模式之間的兩層映射D.三層模式
20、當數據庫損壞時,數據庫管理員可通過何種方式恢復數據庫()A、事務日志文件B、主數據文件C、DELETE 語句D、聯機幫助文檔
21、在查詢分析器中運行下面的語句
CREATE TABLE numbers(N1 int,N2 numeric(5,0),N3 numeric(4,2))GO
INSERT INTO numbers VALUES(1.5,1.5,1.5)SELECT * FROM numbers
后會得到什么樣的結果()
A、返回 2,2 和 1.50 的結果集合 B、返回 1.5,1.5 和 1.5 的結果集合
C、CREATE TABLE 命令不會執行,因為你無法為列 N2 設置精度為 0 D、返回 1,2 和 1.50 的結果
22、分析下面的表定義 Create Table autos
(makevarchar(20)not null,modevarchar(20)not null,acquisition_cost money null, acquisition_datedatetime null)
執行以上語句后,再執行下面的語句會發生()Truncate table autos Begin transaction
Insert into autos(make,model)values(‘Tucker’,’Torpedo’)If exists(select * from autos)Rollback tran Else
Commit tran End
A、該批處理將失敗,因為 begin tran?commit tran 不正確 B、該批處理結束后,表內空無一行 C、該批處理結束后,表內有一行 D、所有適當的錯誤處理會被執行
23、有下面的存儲過程
Create procedure Myp1 @P int AS
Select name,age from student where age=@P
假如你要在 student 表中查找年齡是 20 歲的學生,)(可以正確地調用這個存儲過程。A、EXEC Myp1 @P=’20’B、EXEC Myp1 @P=20’ C、EXEC Myp1 P=’20’D、EXEC Myp1 P=20’
24、SQL Server 系統中的所有系統級信息存儲于哪個數據庫()。A、masterB、modelC、tempdbD、msdb
25、找出考試成績前 5 名的學生
A、select top 5 姓名,分數 from student
B、select top 5 姓名,分數 from student order by 分數 desc C、select top 5 姓名,分數 from student order by 分數 asc
D、select top 5 percent 姓名,分數 from student order by 分數 desc
二、填空題(共 30 分,第 1~15 小題每空 1 分,16~20 小題每空 2 分)
1、T-SQL 中的查詢、更新、刪除命令分別用 SELECT、()、DELETE 表示。
2、SQL 中的授權命令是(),權限回收命令是 REVOKE。
3、數據庫的三類完整性約束分別為()(、)、用戶自定義完整性。
4、數據庫系統的核心是()。、在 E-R 圖 中,圖 形 包 括 矩 形 框、菱 形 框、橢 圓 框,其 中 表 示 實 體 聯 系 的 是()。
6、()是由一個或多個基本表導出的虛擬表,是關系數據庫系統提 供給用戶以多種角度觀察數據庫中數據的重要機制。
7、關系模型中的元組、屬性和關系數據庫表中的()、字段對應。
8、將已有數據庫加到 SQL Server 系統環境中,可以右單擊“數據庫”項,選擇其快捷菜單 中的(),完成操作后,就可使用這個數據庫了。
9、多表連接時,為了避免產生笛卡爾積,并且得到所需要的檢索結果,要使用 WHERE 子句 給出連接條件。一般來說,對 N 個表(或視圖)的檢索要有()個連接條件。
10、若有命令 SELECT S.姓名,C.班組 FROM STUDENT S,CLASS C?? 則其中的 S 和 C 稱 為表的()。
11、SQL Server 中,存儲過程有三種,它們分別是()、用戶自定義的存 儲過程和擴展存儲過程。
12、表中某列為變長字符數據類型 varchar(100),其中 100 表示字符或字節數。假如輸入 字符串為 gtym13e5,存儲的長度為()字節。
13、Server 查詢分析器中使用的注釋方式有兩種,SQL它們是()。
14、觸發器是一種特殊類型的存儲過程,其特別性在于它不需要用戶的顯式調用,而是在()自動執行。
15、如果事務遇到錯誤,則所有的數據更改被取消,系統()。
16、begin ? end 用來定義一個語句塊,begin 和 end 之間的語句作為一個單獨的執行單 元來執行。如果 if ?else 或 while 語句中不使用 begin ? end 語句塊,則只執。行
17、在人事表中若有條件 SELECT??FROM??WHERE 姓名 LIKE ‘_寶%’,將檢索。到
以下填空均使用給出的“學生選課”數據庫
學生 S(學號 sno,姓名 sname,性別 sex,年齡 age,民族 nation,籍貫 place,所屬班級 clname)課程 C(課程編號 cno,課程名稱 cname,學期 term,學時 period,學分 credit)選課 SC(學號 sno,課程編號 cno,成績 grade)
學生表 S sno 20080101 20080102 20080205 20080211 20081008 20081010 sname 李楓 張強 王依萍 胡東 李小玲 李萍 sex 女 男 女 男 女 男
age 22 29 18 24 20 30
nation 漢 漢 滿 漢 漢 回
cname 軟件工程 軟件工程 網絡工程 網絡工程 英語 英語
place 陜西渭南 陜西榆林 廣西玉林 新疆喀什 浙江溫州 寧夏吳忠
選課表 SC Sno 20080101 20080101 20080101 20080101 20080102 20080102 20080102 20080102 20080205 20081008 20081008 20081010 Cno C01 C03 C04 C05 C01 C03 C04 C05 C01 C01 C02 C01 90 85 88 92 80 85 grade 90 90 85 95
課程表 C Cno C01 C02 C03 C04 C05 C08 C10 cname 英語 英語寫作 高等數學 數據結構 離散數學 普通物理 計算機網絡
term 1 2 1 4 3 2 5
Period 108 36 108 54 72 54 54
credit 6 2 6 3 3 3 3
18、創建課程表 C 與選課表 SC 的一多關系。Create table SC
(Snochar(10),Cno char(4),grade real, Constraint PK_S Primary Key(Sno)Foreign Key(Cno)reference)
19、以下程序用于查找 S 表是否存在姓名為馬東的記錄,并顯示相關的信息,完成該程序。char(8)Declare Set @name=’馬東’
(select * from S where sname=@name))If(Print ‘姓名為’+@name+’的同學存在’ Else
Print ‘姓名為’+@name+’的同學不存在’ 20、以下創建一個 st_g 的存儲過程 st_gcreate As Begin
Select x.sno,x.sname,y.grade from S x,SC y where x.sno=y.sno End
。該程序完成的功能是
三、用 T-SQL 命令完成下列各題,所使用的數據庫 DBWSBM 關系如下圖。(共 40 分,每小題 4 分)
1、顯示 DBWSBM 數據庫中的 tblkasheng 表、tblxb 表、tblkhmk 表、tblbmdw 表的全部 信息(如圖)。
2、顯示 tblkaosheng 表中全部員工的姓名(xm)和考試成績(kscj)的 80%用作平時成 績,去掉姓名和考試成績相同的記錄,列標題用漢字姓名和平時成績顯示。
3、對 tblkaosheng 表,列出太原理工大學成教院和山西大學成教院的學生名單。
4、對于 tblbmdwdm 和 tblkaosheng,列出太原理工大學所有考生的信息,并將結果存 入 N1 表中。
5、對 tblkaosheng 表,列出按報名單位代碼(bmdwdm)統計的考試成績平均分數,列 出及格的部門編號及平均分。
6、創建一個視圖 V1,要求該視圖準確包含所有考生的準考證號、姓名、性別、考核模 塊和考試成績。
7、分)為 tblkaosheng 表定義一個全局滾動動態游標 cur_tblkaosheng,用于訪問(6 準考證號、姓名、考試時間和考試成績。并打開聲明的游標,讀取游標的數據。
8、創建一個存儲過程 P1,要求執行改存儲過程能夠返回考生數據表(tblkaosheng)中
bmdwdm(報名單位代碼)為 2490 的考生的 zkzh(準考證號)(xm)姓名、性別和 kscj(考、試成績)結果集,并且該結果集要按照 bmdwdm 和準考證號升序排列
9、為表 tblzy(職業表)創建一個名為 T1 觸發器,當執行添加、更新或刪除時,激活該 觸發器。
10、分)對 tblkasheng 表,給所有不及格的考生的考試成績加 5 分。(2 《數據庫技術與應用》樣題參考答案
一、選擇題(共 30 分,1--20 每小題 1 分,21—25 每小題 2 分。下列各題 A)、B)、C)、D)四個選項中,只有一個選項是正確的)
1、D2、B3、D4、A5、A6、A7、C8、B
9、B10、D11、A
12、C
13、D14、A
15、D16、D
17、D
18、D19、A 20、A
21、D22、C23、B
24、A
25、B
二、填空題(共 30 分,第 1~15 小題每空 1 分,16~20 小題每空 2 分)
1、update
2、grant
3、實體完整性參照完整性
4、數據庫管理系統 或 DBMS
5、菱形
6、視圖
7、記錄
8、附加
9、N-1
10、別名
11、系統存儲過程 12、8
13、--單行注釋,/**/多行注釋
14、事件觸發時
15、回滾到事務起始點
16、緊跟其后的一條語句
17、寶前一個任意漢字,寶后多個任意漢字
18、C(Cno)
19、@nameexists
20、Procedure查詢學生選課數據庫中所有學生的選課成績
三、用 T-SQL 命令完成下列各題,所使用的數據庫關系如下圖。(共 40 分,每小題 4 分)
1、select * from tblkaosheng select * from tblxb select * from tblkhmk select * from tblbmdw
2、select DISTINCT xm as 姓名,kscj*0.8 as平時成績 from tblkaosheng
3、解一:selectbmdwmc,xm from tblkaoshengx,tblbmdw y where x.bmdwdm=y.bmdwdm and bmdwmc='太原理工大學成教院' or bmdwmc='山西大 學成教院'
解二:SELECTtblbmdw.bmdwmc, tblkaosheng.xm
FROM tblkaosheng INNER JOIN tblbmdw ON tblkaosheng.bmdwdm = tblbmdw.bmdwdm WHERE(tblbmdw.bmdwmc = '太原理工大學顧教院')OR(tblbmdw.bmdwmc = '山西大學成教院')
4、select * from tblkaoshengx,tblbmdw y where x.bmdwdm=y.bmdwdm and bmdwmc like '太原理工大學%'
5、select bmdwdm,AVG(kscj)from tblkaosheng group by bmdwdm having AVG(kscj)>=60
6、解一:create view V1 as select xm AS 姓名, xbmc AS 性別,khmkmcAS 考核模 塊,kscjAS 考試成績 from tblkaosheng x, tblxb y, tblkhmk z Where x.xbdm=y.xbdm and x.khmkdm=z.khmkdm 解二:create view V1` as SELECTtblkaosheng.xm AS 姓名, tblxb.xbmc AS 性 別, tblkhmk.khmkmc AS 考核模塊, tblkaosheng.kscj AS 考試成績 FROMtblkaosheng INNER JOIN tblxb ON tblkaosheng.xbdm = tblxb.xbdm INNER JOIN tblkhmk ON tblkaosheng.khmkdm = tblkhmk.khmkdm
7、use DBWSBM DECLARE cur_tblkaosheng CURSOR GLOBAL SCROLL DYNAMIC FOR SELECT zkzh,xm,kssj,kscj FROM tblkaosheng OPEN cur_tblkaosheng FETCH NEXT FROM cur_tblkaosheng WHILE @@fetch_status = 0 BEGIN FETCH NEXT FROM cur_tblkaosheng END CLOSE cur_tblkaosheng DEALLOCATE cur_tblkaosheng
8、create proc P1 as SELECTtblkaosheng.zkzh, tblkaosheng.xm, tblxb.xbmc, tblkaosheng.kscj FROM tblkaosheng INNER JOIN tblxb ON tblkaosheng.xbdm = tblxb.xbdm WHERE(tblkaosheng.bmdwdm = 2490)
/*取第一個數據行*/
/* 檢查@@fetch_status是否還有數據可取*/
ORDER BY tblkaosheng.bmdwdm
9、CREATE TRIGGER T1 ON tblzy FOR INSERT,UPDATE,DELETE AS SELECT * FROM inserted SELECT * FROM deleted
10、update tblkaosheng set kscj=kscj+5 where kscj<60