SQLServer数据库复习题.docx

上传人:b****7 文档编号:15358489 上传时间:2023-07-03 格式:DOCX 页数:15 大小:90.79KB
下载 相关 举报
SQLServer数据库复习题.docx_第1页
第1页 / 共15页
SQLServer数据库复习题.docx_第2页
第2页 / 共15页
SQLServer数据库复习题.docx_第3页
第3页 / 共15页
SQLServer数据库复习题.docx_第4页
第4页 / 共15页
SQLServer数据库复习题.docx_第5页
第5页 / 共15页
SQLServer数据库复习题.docx_第6页
第6页 / 共15页
SQLServer数据库复习题.docx_第7页
第7页 / 共15页
SQLServer数据库复习题.docx_第8页
第8页 / 共15页
SQLServer数据库复习题.docx_第9页
第9页 / 共15页
SQLServer数据库复习题.docx_第10页
第10页 / 共15页
SQLServer数据库复习题.docx_第11页
第11页 / 共15页
SQLServer数据库复习题.docx_第12页
第12页 / 共15页
SQLServer数据库复习题.docx_第13页
第13页 / 共15页
SQLServer数据库复习题.docx_第14页
第14页 / 共15页
SQLServer数据库复习题.docx_第15页
第15页 / 共15页
亲,该文档总共15页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

SQLServer数据库复习题.docx

《SQLServer数据库复习题.docx》由会员分享,可在线阅读,更多相关《SQLServer数据库复习题.docx(15页珍藏版)》请在冰点文库上搜索。

SQLServer数据库复习题.docx

SQLServer数据库复习题

SQL-Server数据库复习题

D

A.主数据文件、次数据文件、事务日志文件

B.主数据文件、次数据文件、文本文件

C.表文件、索引文件、存储过程

D.表文件、索引文件、图表文件

10.当数据库损坏时,数据库管理员可通过何种方式恢复数据库()。

A.事务日志文件B.主数据文件

C.DELETE语句D.联机帮助文件

11.SQLServer2005系统中的所有系统级信息存储于哪个数据库()。

A.masterB.modelC.tempdbD.msdb

12.下面关于tempdb数据库描述不正确的是()。

A.是一个临时数据库B.属于全局资源

C.没有权限限制D.是用户建立新数据库的模板

13.Transact-SQL对标准SQL的扩展主要表现为()。

A.加入了程序控制结构和变量

B.加入了建库和建表语句

C.提供了分组(GroupBy)查询功能

D.提供了Min、Max等统计函数

14.语句“USEmasterGOSELECT*FROMsysfilesGO”包括()个批处理。

A.1B.2C.3D.4

15.SQLServer2005的字符型系统数据类型主要包括()。

A.int、money、charB.char、varchar、text

C.datetime、binary、intD.char、varchar、int

16.如果要在SQLServer2005中存储图形图像、Word文档文件,不可采用的数据类型是()。

A.binaryB.varbinaryC.imageD.text

17.下面关于Timestamp数据类型描述正确的是:

()。

A.是一种日期型数据类型

B.是一种日期和时间组合型数据类型

C.可以用来替代传统的数据库加锁技术

D.是一种双字节数据类型

18.使用“CREATEDATABASEAAA”命令所建立数据库文件的初始大小是()字节。

A.1MB.2MC.3MD.4M

19.下面关于索引的描述不正确的是()。

A.索引是一个指向表中数据的指针

B.索引是在元组上建立的一种数据库对象

C.索引的建立和撤消对表中的数据毫无影响

D.表被撤消时将同时撤消在其上建立的索引

20.以下哪种情况应尽量创建索引()。

A.在where子句中出现频率较高的列

B.具有很多NULL值的列

C.记录较少的基本表

D.需要更新频繁的基本表

21.下面关于聚集索引和非聚集索引说法正确的是()。

A.每个表只能建立一个非聚集索引

B.非聚集索引需要较多的硬盘空间和内存

C.一张表上不能同时建立聚集和非聚集索引

D.一个复合索引只能是聚集索引

22.“CreateUniqueIndexAAAOn学生表(学号)”将在学生表上创建名为AAA的()。

A.惟一索引B.聚集索引C.复合索引D.唯一聚集索引

23.SQLServer2005提供的单行注释语句是使用()开始的一行内容。

A.“/*”B.“--”C.“{”D.“/”

24.下列标识符可以作为局部变量使用()。

A.[@Myvar]B.MyvarC.@MyvarD.@Myvar

25.Transact-SQL支持的程序结构语句中的一种为()。

A.Begin…EndB.If…Then…ELSE

C.DoCaseD.DoWhile

26.不属于SQLServer2005系统全局变量的是()。

A.@@ErrorB.@@Connections

C.@@Fetch_StatusD.@Records

27.属于事务控制的语句是()。

A.BeginTran、Commit、RollBack

B.Begin、Continue、End

C.CreateTran、Commit、RollBack

D.BeginTran、Continue、End

28.SQLServer2005触发器主要针对下列语句创建()。

A.SELECT、INSERT、DELETE

B.INSERT、UPDATE、DELETE

C.SELECT、UPDATE、INSERT

D.INSERT、UPDATE、CREATE

29.下列SQLServer2005语句中出现语法错误的是()。

A.DECLARE@MyvarINT

B.SELECT*FROM[AAA]

C.CREATEDATABASEAAA

D.DELETE*FROMAAA

30.索引是在基本表的列上建立的一种数据库对象,它同基本表分开存储,使用它能够加快数据的()速度。

A.插入B.修改C.删除D.查询 

二、填空题

1.SQLServer2005采用__________计算模型,通过中央服务器集中存储数据资源。

2.SQLServer2005数据库应用的处理过程分布在____和服务器上。

3.SQLServer2005服务器可以被多台客户机访问,数据库服务器仅返回客户端应用程序所需要的数据,这样做的好处是可以减少____。

4.SQLServer2005提供了动态的自我管理机制,能够自动增大或缩小数据库所占用的______。

5.在网络环境下,当多个用户同时访问数据库时,就会产生并发问题,SQLServer2005是利用________完成并发控制的。

6.一般可以使用命令来标识Transact-SQL批处理的结束。

7.SQLServer2005中的数据类型通常是指字段列、存储过程参数和____的数据特征。

8.varchar数据类型可以自动去掉字段或变量尾部的__以节省空间。

9.SQLServer2005的datetime和smalldatetime数据类型主要用来存储________和________的组合数据。

10.在SQLServer2005中,通常使用________数据类型来表示逻辑数据。

11.是一种常用的改善数据库性能的技术。

12.SQLServer2005中引入索引主要是为了加速________速度,也可保证数据的惟一性。

13.索引可以加速selcet语句中OrderBy和____________选项的执行速度。

14.索引一经创建就完全由SQLServer2005系统选择和维护。

15.索引会影响对基本表的________、________和________等操作的速度。

16.在索引命令中使用关键字CLUSTERED或NOCLUSTERED分别表示将建立的是________或________索引。

17.在基本表的某个列上建立索引,可以使基本表中的所有记录按该列值的________或________排列。

18.当指定基本表中某一列或若干列为主码时,则系统将在这些列上自动建立一个________、________和________的索引。

19.当指定基本表中某一列或若干列为UNIQUE约束时,则系统将在这些列上自动________一个唯一值________。

20.若规定基本表中某一列或若干列为非空和唯一值双重约束,则这些列就是该基本表的________码,若只规定为唯一值约束,则__________空值重复出现。

三、写出下列每条语句或程序段的功能

假设存在名为AAA的数据库,包括Students(学号char(8),姓名varchar(8),年龄int,专业varchar(20),入学日期DateTime)和Score(学号char(8),课程名varchar(10),成绩numeric(5,2))两张表。

1.SELECT*

FROMStudents

WHEREDATEPART(year,入学日期)=DATEPART(year,GETDATE())

 

2.DECLARE@MyNOCHAR(8)

SET@MyNO='20030001'

IF(SELECT专业FROMStudentsWHERE学号=@MyNO)='计算机软件'

BEGIN

SELECTAVG(成绩)AS平均成绩

FROMScore

WHERE学号=@MyNO

END

ELSE

PRINT'学号为'+@MyNO+'的学生不存在或不属于软件专业'

GO

 

3.declare@anumeric(5,2)

set@a=(selectavg(成绩)fromscore)

select*

fromscore

where成绩>=@a

 

4.declare@anumeric(5,2),@bnumeric(5,2)

set@a=(selectmax(成绩)fromscore)

set@b=(selectmin(成绩)fromscore)

print@a-@b

 

5.declare@achar(6)

set@a='刘亮'

if(exists(select*fromstudentswhere姓名=@a))

print'姓名为'+@a+'的同学存在!

'

else

print'姓名为'+@a+'的同学不存在!

'

 

6.declare@achar(8)

set@a='计算机'

select计算机专业人数=count(*)

fromstudents

whereleft(专业,3)=@a

 

7.selectyear(入学日期)as入学年份,count(*)as人数

fromstudents

groupbyyear(入学日期)

 

8.selectmonth(入学日期)as入学月份,count(*)as人数

fromstudents

groupbymonth(入学日期)

 

9.selectday(入学日期)as入学日号,count(*)as人数

fromstudents

groupbyday(入学日期)

 

10.createprocedurexxk1

as

begin

select*

fromstudentsx,scorey

wherex.学号=y.学号

end

11.createprocedurexxk2

as

begin

selectx.学号,x.姓名,x.专业,count(*)as门数

fromstudentsx,scorey

wherex.学号=y.学号

groupbyx.学号,x.姓名,x.专业

end

 

12.createprocedurexxk3

as

begin

select学号,avg(成绩)as平均成绩

fromscore

groupby学号

end

 

13.createprocedurexxk4

@achar(8),@bvarchar(10),@cnumeric(5,2)

as

begin

updatescore

set成绩=@c

where学号=@aand课程名=@b

end

 

14.createprocedurexxk5

@achar(8),@bvarchar(10),@cnumeric(5,2)

as

begin

insertintoscore

values(@a,@b,@c)

end

 

15.createprocedurexxk6

@achar(8),@bvarchar(10)

as

begin

deletefromscore

where学号=@aand课程名=@b

end

 

16.eclare@achar(8),@bvarchar(10),@cnumeric(5,2)

declare@dint

set@d=0

declarexxxcursor

forselect学号,课程名,成绩

fromscore

openxxx

fetchxxxinto@a,@b,@c

while@@fetch_status=0

begin

set@d=@d+1

fetchfromxxxinto@a,@b,@c

end

closexxx

deallocatexxx

print@d

 

17.declare@achar(8),@bvarchar(10),@cnumeric(5,2)

declarexxxcursor

forselect学号,课程名,成绩

fromscore

openxxx

fetchxxxinto@a,@b,@c

while@@fetch_status=0

begin

print@a+replicate('',3)

+@b+str(@c)+replicate('',3)

+(case

when@c>=90then'优秀'

when@c>=70then'良好'

when@c>=60then'及格'

else'不及格'

end

fetchfromxxxinto@a,@b,@c

end

closexxx

deallocatexxx

 

18.declare@cnumeric(5,2)

declare@c1int,@c2int,@c3int,@c4int

set@c1=0;set@c2=0;set@c3=0;set@c4=0

declarexxxcursor

forselect成绩fromscore

openxxx

fetchxxxinto@c

while@@fetch_status=0

begin

if(@c>=90)set@c1=@c1+1;

elseif(@c>=70)set@c2=@c2+1;

elseif(@c>=60)set@c3=@c3+1;

elseset@c4=@c4+1

fetchfromxxxinto@c

end

closexxx

deallocatexxx

print'优秀生人数:

'+str(@c1,5);

print'良好生人数:

'+str(@c2,5);

print'及格生人数:

'+str(@c3,5);

print'及格生人数:

'+str(@c4,5)

 

19.declare@achar(8),@bvarchar(10)

declare@cnumeric(5,2)

declare@dint

set@d=80

declarexxxcursor

forselect学号,课程名,成绩

fromscore

openxxx

fetchxxxinto@a,@b,@c

while@@fetch_status=0

begin

if(@c>=@d)print@a+replicate('',3)+@b+str(@c,5)

fetchfromxxxinto@a,@b,@c

end

closexxx

deallocatexxx

 

20.declare@achar(8),@bvarchar(10),@cnumeric(5,2)

declare@schar(8),@rvarchar(10)

set@s='20030001'

set@r='数学'

set@c=84

declarexxxcursor

forselect学号,课程名fromscore

openxxx

fetchxxxinto@a,@b

while@@fetch_status=0

begin

if(@a=@sand@b=@r)

updatescore

set成绩=@c

wherecurrentofxxx

fetchfromxxxinto@a,@b

end

closexxx

deallocatexxx

 

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2