SQL Server数据库模拟试题1
一、选择题(每题1分,共15分)
1.语句“SELECT DATENAME( year, getdate()) AS 'Date'”的输出结果为________。 A.Date B.当前日期 C.当前年份 D. 当前时间 2.如果SQL Server的管理员想在某数据库的日志文件大小超过设定值的70%时能够收到通知,以便及时的进行数据清理和增加磁盘空间。应该创建一个________类型的警报。 A.事件警报 B.性能条件警报 C.触发器报警 D.日志警报
3.数据库管理员用以下语句建立了一个新表。
CREATE TABLE emp_info( emp_ID int PRIMARY KEY, emp_Name varchar(50) UNIQUE, emp_Address varchar(50) UNIQUE)
系统在该表上自动创建________索引。
A.复合 B.唯一 C.聚集 D.非聚集 4.死锁现象发生的原因_________。
A.并发控制 B.服务器故障 C.数据错误 D.操作失误 5.使用游标处理结果集时,其基本过程不包括_________步骤。
A.打开游标 B.关闭游标 C.游标嵌套 D.释放游标 6.监视SQL Server的性能对象时,通常不关注_________。
A.磁盘读写 B.CPU使用率 C.打印速度 D.内存用量
7.分为多个文件的超大型数据库(VLDB)进行数据库备份时,应选择_________备份策略。
A. 完全数据库备份 B. 数据库文件或文件组备份 C. 差异备份 D. 完全数据库和事物日志备份 8. 默认情况下,SQL Server 2005的系统数据库有_________个。
A. 10 B. 5 C. 4 D. 6
9. 在存有数据的表上建立聚集索引,可以引起表中数据的()发生变化。 A. 逻辑关系 B. 记录结构 C. 物理位置 D. 列值 10.SQL Server 2005的中的视图存在数据的是_________。
A.标准视图 B.索引视图 C.所有视图 D.以上都不对 11.下列角色中_________角色没有成员。
A.固定服务器 B.数据库 C.应用程序 D.public 12.SQL server 数据库文件有3类,其中日志文件的后缀为_________。 A. .ndf B..ldf C. .mdf D. .idf
13.下面语句中,_________语句用来删除视图。 A.CREATE TABLE B.ALTE VIEW C.DROP VIEW D.CREATE VIEW 14.对于撤销权限的不正确描述是_________。
A.可以撤销已授予权限 B.不能利用REVOKE语句撤销已拒绝权限 C.可以撤销已拒绝权限 D.可以利用REVOKE语句撤销已授予权限 15.作业是由一系列SQL Server代理顺序执行的指定操作,不可以_________。 A. 触发执行 B. 手工执行 C. 调度执行 D. 触发警报执行 二、填空题(每空1分,共15分)
1
1.在SQL Server Management Studio中,_________窗口主要显示用户经常管理的数据库服务器的列表,_________窗口用于显示数据库服务器中的所有数据库对象。
2.在SQL Server 2005系统中,一个数据库至少有一个_________文件和一个_________文件。而数据库中表的关联就是_________约束。
3.数据库关系图中,如果关系连线两端都为钥匙图标,则关系类型为__________;如果关系连线一端为钥匙图标,另一端为∞图标,则关系类型为____________。
4.Transact-SQL 语句基本表定义有_________、_________、_________和_________4个表级约束。
5.当指定基本表中某一列或干列为主键时,则系统将在这些列上自动建立一个________、________的索引。
6.SELECT查询语句中两个必不可少的子句是_________和WHERE子句。 7.在SQL Server 2005中不仅可以通过视图检查基本表中的数据,而且还可以向基本表中添加或修改数据,但是所插入的数据必须符合基本表中的________。
三、简答题(每题5分,共20分)
1. 简述SQL Server Management Studio界面的主要功能。
2. SQL脚本执行的结果有哪几种形式,查看SQL脚本的方法有哪些?
3. 如果给某用户授予更新表的权限,但该用户所属角色又拒绝了此权限,那么该用户账户是否保留更新表的权限,阐述原因?
4. 简述使用SQL Server代理的一般步骤。
四、综合题(第1题每小题5分,第2题15分,共50分)
1.使用Transact-SQL语句完成操作。 (1)使用CREATE DATABASE创建一个新的数据库,名称为STUDENT1,其他所有参数均取默认值。并将已创建的数据库STUDENT1重命名为STUDENT。
(2)在数据库STUDENT中,创建一个学生信息表stud_info其中sname字段具有唯一性。表结构如下:
stud_info(sno nchar(10),sname nchar(8),sex nchar(2), birthday datetime,polity nchar(4))
(3)在stud_info表中先插入3条新记录,其中的POLITY字段的值为NULL,要求对记录进行查询时,对应的NULL值在显示时显示“文学”。
(4)查询stud_info表,将返回的记录数赋给变量@RowsReturn。 (5)利用Transact-SQL语句创建一个视图V_stud,要求显示stud_info表中所有姓黄的同学。
(6)使用sp_depends显示V_stud视图所依赖的对象。
(7)将对数据库STUDENT中stud_info表的SELECT权限授予数据库用户hans。 2.现有一个服务器中包含数据库sales,该数据库的一个主数据库文件和一个事物日志文件存储在不同的硬盘上。在定期执行完全、差异、事物日志数据库备份时,所有的备份都通过备份设备salesbak在被标志的一周内做完。本周的备份部分标题信息如下:
Backup Name Backup Type BackupFinish Date (1)sales_db_full 1(完全数据库备份) 2010-01-17 11:57:04.000 (2)sales_db_differ1 5(差异备份) 2010-01-18 11:04:12.000 (3)sales_df_log1 2(事务日志备份) 2010-01-18 14:15:41.000 (4)sales_db_differ2 5(差异备份) 2010-01-18 15:04:23.000
2
(5)sales_df_log1 2(事务日志备份) 2010-01-19 21:15:41.000 (6)sales_df_log2 2(事务日志备份) 2010-01-21 21:15:41.000 在2010年1月21日包含数据文件的硬盘失败。若要以尽快的速度恢复尽可能多的数据。请写出详细的执行方案和步骤。
3
SQL Server数据库模拟试题1参考答案
一、选择题(每题1分,共15分)
1~5.CBCAC 6~10.CBBCB 11~15.CBCBA 二、填空题(每空1分,共15分)
1.已注册的服务器 对象资源管理器 2.主数据 日志 外键 3.一对一,一对多 4.CHECK约束 UNIQUE约束 FOREIGN KEY约束 PRIMARY KEY约束 5. 聚集 唯一 6. FROM子句 7.列和约束 三、简答题(每小题5分,共20分)
1. SQL Server Management Studio是SQL Server 2005的系统中最重要的管理工具,也是SQL Server 2005的可视化集成环境,用于访问、配置和管理SQL Server 2005的组件。 数据库管理员可以通过图形界面调用其他管理工具来完成日常管理操作,并与Visual Studio开发平台集成在一起,形成了一个集数据库的管理与应用开发风格一致的界面环境。用于完成SQL Server 2005的最基本的操作。
2. 选择输出格式可以通过工具栏方式,也可以通过 “查询”|“将结果保存到” 菜单命令方式。SQL脚本执行的结果通常有如下3种形式:以文本格式显示结果、以网格显示结果及将结果保存到文件。查看SQL脚本的方法可以通过查询设计器进行,也可以通过文本方式进行。
3. 该用户不再保留更新表的权限。因为拒绝权限优先级高,可以将使授予给他的权限失效。
4. 使用SQL Server代理的一般步骤:
(1)确定管理任务内容、服务器事件定期执行,以及这些任务或事件是否可以通过编程方式进行管理。
(2)如果任务涉及一系列步骤并且在特定的时间或响应特定事件执行,则该任务适合使用SQL Server代理进行自动化处理。
(3)使用SQL Server管理平台、Transact-SQL脚本或SQL管理对象定义一组作业、计划、警报和操作员。
(4)在SQL Server代理中运行已经定义的作业。
四、综合题(每小题5分,共50分) 1.参考答案
(1)CREATE DATABASE STUDENT1
sp_renamedb 'STUDENT1','STUDENt' (2)USE STUDENT GO
CREATE TABLE stud_info
( sno nchar(10) sname nchar(8), sex nchar(2) , birthday datetime,
4
PRIMARY KEY,
polity nchar(4),
constraint uk_name unique(sname)
)
(3)--打开数据库STUDENT
USE STUDENT
GO
--向表中插入三条记录
INSERT INTO stud_info (Sno,SNAME,SEX)
VALUES('093552017','王战国','男') INSERT INTO stud_info (Sno,SNAME,SEX)
VALUES('0935521027','周尚书','女') INSERT INTO stud_info (Sno,SNAME,SEX) VALUES('0935522037','李易健','男') --查询刚插入的记录信息
SELECT Sno AS 学号, Sno AS 姓名,SEX AS 性别,POLITY AS 社团 FROM stud_info
WHERE SUBSTRING(Sno,1,6)='093552'
--将政治面貌字段的值为空的记录用'文学'代替NULL显示 SELECT Sno AS 学号,SNAME AS 姓名,
SEX AS 性别,(ISNULL(POLITY,'文学')) AS 社团 FROM stud_info
WHERE SUBSTRING(Sno,1,6)='093552' (4)USE STUDENT
GO
--声明变量
DECLARE @RowsReturn int --给变量赋值
SET @RowsReturn = (SELECT COUNT(*) FROM stud_info) --显示变量的值
SELECT @RowsReturn AS 'SELECT 返回的记录数' GO
(5)USE STUDENT GO
CREATE VIEW V_stud AS
SELECT Sno, Sname, Sex FROM stud_info
WHERE Sname LIKE '黄%' (6)sp_depends V_stud
(7)GRANT SELECT ON stud_info TO hans 2. 参考答案
(1)备份最新事务日志
Backup log sales to salesbak (2)还原完全数据备份
5
Restore database sales from salesbak with file=1,norecovery (3)还原最新的差异备份
Restore database sales from salesbak with file=4,norecovery (4)顺序还原事务日志备份
Restore log sales from salesbak with file=5,norecovery Restore log sales from salesbak with file=6,norecovery (5)还原最新事务日志备份
Restore log sales from salesbak with file=7,recovery
6