SQL Server与数据库原理期末复习练习题.docx
《SQL Server与数据库原理期末复习练习题.docx》由会员分享,可在线阅读,更多相关《SQL Server与数据库原理期末复习练习题.docx(15页珍藏版)》请在冰点文库上搜索。
SQLServer与数据库原理期末复习练习题
《SQLServer与数据库原理》期末复习练习题
第1章了解SQLServer2000
1.
SQLServer2000有7个版本,常用的3个版本是企业版、标准版和个人版。
2.在装有WindowsXP和IE5.0浏览器的PC机上安装SQLServer2000,应该考虑用个人版。
3.SQLServer2000提供的最常用的管理工具和实用程序有服务管理器、
企业管理器和查询分析器。
4.用于启动/停止/暂停SQLServer服务的管理工具是服务管理器。
5.SQLServer中类似资源管理器的工具是企业管理器。
6.用于编辑和执行T-SQL语句并返回执行结果的工具是查询分析器。
第2章管理数据库
1.存储在计算机内有组织的、统一管理的相关数据的集合称为数据库。
2.位于用户和操作系统之间的数据管理软件称为数据库管理系统。
3DB、DBMS连同计算机硬软件及数据管理人员组成的计算机系统称为
数据库系统。
DBS
4.SQLServer2000中的数据库大致可以分为两类:
系统数据库和
用户数据库。
附加信息:
DBA数据库管理员
5.SQLServer2000数据库中的对象主要包括:
表、视图、索引、
存储过程和触发器。
6.SQLServer2000的数据库文件包含以下三类文件:
主数据文件,其扩展名为
mdf,每个数据库都必须有且仅有一个;次数据文件,其扩展名为
ndf;事务日志文件,其扩展名为ldf。
7.SQL是结构化查询语言的缩写,主要应用在关系数据库,可实现数据库中的数据检索。
8.用SQL语句在D盘example文件夹下创建一个student数据库,主文件名student_data.mdf,事务日志文件名student_log.ldf。
createdatabasestudent
on
(name=student_data,
filename='d:
\example\student_data.mdf')
logon
(name=student_log,
filename='d:
\example\student_log.ldf')
9.用SQL-EM创建数据库的操作顺序应该是:
CBDA
其中,A:
在打开的“数据库属性”对话框中指定数据库和数据库文件信息;
B:
用鼠标右键点击“数据库”结点;
C:
启动SQL-EM,在左侧窗口中展开连接的服务器;
D:
在弹出的快捷菜单中选择“新建数据库”命令;
10.下面语句的功能是:
将数据库customer的主数据文件customer的大小调整为20MB。
ALTERDATABASEcustomer
MODIFYFILE
(NAME=customer,
SIZE=20MB)
第3章管理表
1.在数据库管理中,对数据的描述经历了3个阶段:
概念设计中的数据描
述、逻辑设计中的数据描述和物理设计中的数据描述。
2.数据库概念设计中涉及的4个数据描述的术语分别是:
实体、实体集、属性和实体标识符。
3.在数据库逻辑设计中,与概念设计中涉及的4个数据描述术语:
实体、实体集、属性和实体标识符相对应的4个数据描述术语是:
记录、文件、
字段和关键码。
4.一种在概念设计中描述实体类型及实体间联系的工具称为(B)。
ASQL-EMBER图C关系模型D表
5.设学生选课系统中有两个实体集,一个是学生s,属性有:
学号sno、班级class、姓名sname、性别sex;另一个是课程c,属性有:
课程编号cno、课程名cname、学分credit。
一名学生可以选多门课程,一门课程也可以被多名学生选读,每个学生选读每一门课程都有一个成绩score。
试用ER图描述实体s与实体c之间的选课联系。
6.下面的结论中错误的是(C)。
A在一个关系中,超键是唯一标识元组的属性或属性集。
B候选键是不含有多余属性的超键。
C在一个有多个候选键的关系中,所有这些候选键的组合才能作为主键。
D一个关系的外键一定是另一个关系的主键。
7.关于创建表,下面说法正确的是(A)。
A创建表只是给表建立了一个结构。
B创建表只能用SQL语句CREATETABLE<表名>来实现。
C表一旦创建就可以给任何用户所共享,所以,表是不属于某个数据库的。
D表一旦创建,其结构就不可以修改。
8.下面不是数据编辑的SQL语句为(D)。
AINSERTc(cno,cname,credit)VALUES﹙’c001’,’数据库原理’,3)
BDELETEFROMscWHEREsex=’女’
CUPDATEcSETcredit=2WHEREcname=’数据库原理’
DALTERTABLEsADDpostcodechar(6)NULL
9.在关系模式R(sno,sname,sex,birthday)中,有如下的函数依赖集,根据定义能够成为R的候选键的有sno、sname。
F:
sno→(sno,sname,sex,birthday)
sname→(sno,sname,sex,birthday)
(sno,sname)→(sno,sname,sex,birthday)
10.设关系模式R(ABCD),F=﹛A→B,C→B﹜,试求出R的候选键。
解
(1)求A+、B+、C+、D+
A+=AB;B+=B;C+=CB;D+=D。
(2)R的候选键为ACD
11.设关系模式R(ABCD),F=﹛B→CD,A→D﹜
(1)试说明R不是2NF的理由;
(2)试将R分解为2NF模式集。
解
(1)因为A+=AD;B+=BCD;C+=C;D+=D
R的候选键为AB,非主属性C和D部分依赖于候选键AB,所
以R
2NF
(2)将R分解为R1(AD)和R2(BCD)即可。
第4章检索数据
1.试写出从表s中查询并输出班级(class)为’08软件班’或’08信管班’的,所有性别(sex)为’男’的学号(sno)、姓名(sname)及电话号码(telephone)的T-SQL语句。
解SELECTsno,sname,telephoneFROMsWHEREsex=’男’and(class=’08软件班’orclass=’08信管班’)
2.要想将表中指定列的值相等的记录划为一组,然后对每一组记录产生一个统
计值,应该使用的是(B)。
A聚集函数B分类(GROUPBY子句)
C过滤(HAVING子句)D排序(ORDERBY子句)
3.将一个表中的记录按照一定的条件与另外的表的一些记录连接起来,这种连
接称为内连接,在SELECT语句中其连接的条件通常可以用
WHERE或ON子句中指定的一个逻辑表达式来描述。
附加:
外连接
4.请说出下面语句的功能:
SELECTsname,scoreFROMs,scWHEREs.sno=sc.snoand
cno=(SELECTcnoFROMcWHEREcname=’数据库应用’)
解语句的功能是:
从表s和表sc中,查询出所有选修‘数据库应用’课程的学生的姓名(sname)及其该课程的成绩(score)。
5.设s1、s2是两个结构相同的表,下面哪一种查询操作会使查询结果增加行的数量。
(D)
As1和s2的连接查询B相关子查询
C不相关子查询Dunion(并)运算
第5章Transact-SQL编程
1.用SQL语句编写的程序称为(C),一个或多个SQL语句的集合,并用GO作为结束的信号,这样的语句的集合称为(A),而将执行的两条或两条以上的语句,放在BEGIN和END之间,这样的复合语句称为(D)。
A批处理B游标C脚本D语句块
2.下面哪些特征是局部变量所具有的(可以多选):
A、C、D。
A由用户自己定义的B以@@开头
C只能在它声明的程序内使用D以@开头
3.在T-SQL程序设计中,选择结构使用(A);循环结构使用(C);而转移结构则使用(D)。
AIF语句BSELECT语句CWHILE语句DGOTO语句
4.已知下面两个脚本
(1)DECLARE@scoresmallint
SET@score=(SELECTscoreFROMscWHEREsno=’1001’andcno=’c002’
IF@score>=57and@score<60
SET@score=60
SET@score=@score+2
PRINT@score
(2)DECLARE@scoresmallint
SET@score=(SELECTscoreFROMscWHEREsno=’1001’andcno=’c002’
IF@score>=57and@score<60
BEGIN
SET@score=60
SET@score=@score+2
END
PRINT@score
问当表sc中1001学号学生所修c002课程的成绩score为61时,两个脚本运行后输出的@score的值是多少?
答:
当score=61时,脚本
(1)运行的输出结果为63,脚本
(2)运行的输出结果为61。
5.游标实际上是一种能从包括多条记录的结果集中每次提取一条记录的机制,因此它总是与一条(B)相关联。
ADECLARE语句BSELECT语句
CFETCH语句DSET语句
6.下面是应用程序对游标操作过程的几个步骤,正确的操作顺序应该是:
C、A、B、D。
A打开游标B从一个游标中提取信息
C声明游标D关闭并释放游标
第6章全面掌握SQLServer2000
1.在SQLServer2000中,索引分为聚集索引和非聚集索引两类。
其中,在不改变记录的物理顺序的基础上,通过顺序存放指向记录位置的指针来实现建立记录的逻辑顺序的方法称为非聚集索引。
2.判断下面的说法是否正确(正确打√,错误打×)?
(×)
索引是建立在某个表上的,要想用SQL-EM来查看它们可以展开左侧窗口中指定的数据库,点击表结点,在右侧窗口上选中要找的表,单击鼠标右键,选择“打开表”→“返回所有行”命令,在打开的表中查看。
3.下面关于视图的说法哪一个是对的?
(B)
A视图在数据库中和表是一样的对象
B视图和表一样可以用SELECT语句查询基表中的数据
C视图和关系一样是一种图形对象----视图不是图形
D视图是一种虚表,不能用SELECT语句查询基表中的数据
4.视图可以有目的地将分散在多个表上的数据构造一个集合在一起的框架,以方便以后进行数据检索;也可以对数据库表的列进行不同的组合,以构造多个不同的视图,赋予不同的访问权限,从而限制用户对数据的访问。
这两种作用分别称为集中数据和限制访问。
5.下面关于存储过程的说法哪一个是错的?
(D)
A存储过程实际就是一个用SQL语句事先编好的程序
B存储过程是存储在服务器上的一组预先定义并编译好的SQL脚本
CSQLServer2000提供了许多系统存储过程,但用户也可以根据需要自己
创建存储过程
D存储过程一旦创建并存储到服务器上就不能对它进行修改
6.下面哪一个是执行存储过程的正确语法格式?
(C)
ASELECT<存储过程名>
BDROPPROC<存储过程名>
CEXEC<存储过程名>
DEXECPROC<存储过程名>
7.下面关于触发器的说法哪一个是错的?
(C)
A触发器是一个用SQL语句事先编好的程序
B触发器是存储在服务器上的一组预先定义并编译好的SQL脚本
C触发器可以用EXEC<触发器名>来使用
D触发器只有在对表进行操作时由SQLServer2000自动执行
8.创建触发器的SQL语句中有CREATE、ON、FOR、AS4个子句,它们的功能分别是:
D、C、A、B。
A定义触发器的类型,即插入、删除或修改;
B为触发器预先写有特定功能的SQL语句
C表明触发器所依附的表
D定义触发器名
第7章复制和恢复数据库
1.下面哪一个不属于数据库复制与恢复的功能?
(A)
A在两个数据库之间交换数据文件
B在同一个数据库服务器上备份或还原数据库
C在不同数据库服务器之间移动数据库
D在SQLServer2000与其他数据格式文件之间进行数据交换
2.在SQLServer2000中,数据库备份的类型主要包括完全备份、
差异备份、事务日志备份和文件或文件组备份。
3.请仔细阅读下面一段数据库备份与还原的程序,然后回答问题。
sp_addumpdevice‘disk’,‘s_mdf’,’d:
\example\s_mdf.bak’
go
backupdatabasestudenttos_mdf
--对数据库student进行了修改
restoredatabasestudentfroms_mdfwithnorecovery
(1)程序中创建的备份设备的名字是什么?
答:
s_mdf
(2)程序中所进行的备份类型是什么?
答:
完全备份
(3)程序中所进行的还原是从什么备份中的还原?
答:
从数据库备份中还原
4.下面关于附加数据库的说法错误的是(B)。
A附加数据库主要用于在不同数据库服务器之间转移数据库
B附加数据库可以用于在SQLServer2000与其他数据格式文件之间进行数据交换
C附加数据库也可以用于在同一个数据库服务器上备份或还原数据库
D附加数据库时所用的数据文件和日志文件,可以象磁盘文件一样从原来的数据库中复制得到
5.判断下面的说法是否正确(正确打√,错误打×)?
(√)
数据导入、导出主要用于在SQLServer2000与其他数据库管理系统或其他数据格式之间进行数据交换,但也可以实现在同一或不同的SQLServer2000数据库服务器之间的备份与恢复。
6.在SQLServer2000中,数据的导入、导出是通过(D)实现的。
ABACKUP语句和RESTORE语句
B复制和附加数据文件与日志文件
C系统数据库还原
D数据转换服务(DTS)
第8章保证数据安全性
1.数据访问控制包括两方面的内容:
一方面是对用户登录的管理,另一方面是对用户使用数据库对象的管理。
2.下面哪一项不属于保证数据安全性的措施?
(C)
A登录账户管理B用户管理
C事务日志管理D许可管理
3.SQLServer2000对登录账户的认证有两种模式,它们是:
Windows
认证模式和SQLServer和Windows混合认证模式。
4.下面哪一个不是SQLServer2000允许的角色?
(D)
A固定服务器角色B固定数据库角色
C自定义数据库角色D自定义服务器角色
5.下面关于角色管理的说法错误的是(B)。
ASQLServer2000在安装过程中定义了一些固定角色
B任何用户都不可以向固定角色添加成员
C固定角色包括固定服务器角色和固定数据库角色
D用户可以根据需要创建自定义数据库角色
6.数据库对象创建后,只有拥有者可以访问该数据库对象,任何其他用户想访问该对象必须获得拥有者的授权,这种授权称为许可。
它有两种类型,分别为语句许可和对象许可。
第9章保证数据完整性
1.事务必须具备的4种属性被称为ACID属性,包括原子性、一致性、隔离性和持久性。
2.以下哪一个不属于SQLServer中事务的模式?
(A)
A批处理事务B隐式事务C显式事务D自动事务
3.SQLServer2000使用一种维护数据一致性的工具,以防止多个用户在同一时间内对同一数据进行修改,防止一个用户查询正在被另一个用户修改的数据,防止可能发生的数据混乱,这种工具称为(C)。
A批处理B事务C锁D出错处理
4.在多用户环境中,当多个用户分别锁定不同的资源,而又在等待其他用户释放已锁定的资源时,有可能出现无限制等待的情况,这种情况称为(D)。
A排它锁B共享锁C更新锁D死锁
5.在SQLServer2000中,用户通过检查@@ERROR的值来确定是否已经发生错误。
它的值是一个整数,如果为0则一切正常,否则表示已经发生了一个错误。
6.请写出使用@@ERROR检查并处理错误的SQL语句形式(错误处理部分采用注释方式注明)。
解IF@@ERROR<>0
BEGIN
--错误处理部分
END
2009年6月24日