当前位置:文档之家› SQLServer2008大数据库精彩试题

SQLServer2008大数据库精彩试题

2009-2010学年第二学期科大讯飞公司SQL Server 2008数据库试题合作院校: 班级: : 分数一、 单项选择题(每题2分,共25题,合计50分) 1. SQL Server 2008是一个( )的数据库系统。

(A )网状型 (B )层次型 (C )关系型 (D )以上都不是 2.关于主键描述正确的是:( ) (A )包含一列 (B )包含两列 (C )包含一列或者多列 (D ) 以上都不正确 3. SQL Server 2008 采用的身份验证模式有( )。

(A )仅Windows 身份验证模式 (B )仅SQL Server 身份验证模式 (C )仅混合模式(D )Windows 身份验证模式和混合模式4. SQL 语言按照用途可以分为三类,下面选项中哪一种不是的:( ) (A )DML (B )DCL (C )DQL (D )DDL5. 在SELECT 语句的WHERE 子句的条件表达式中,可以匹配0个到多个字符的通配符是()(A) * (B)% (C)- (D)?6. SQL Server提供的单行注释语句是使用()开始的一行容。

(A)“/*” (B)“--” (C)“{” (D)“/”7. 以下那种类型不能作为变量的数据类型()。

(A)text (B)ntext (C)table (D)image8. 下面不属于数据定义功能的SQL语句是:()A.CREATE TABLEB.CREATE CURSORC.UPDATED.ALTER TABLE9. 如果希望完全安装SQL Server,则应选择()。

A. 典型安装B. 最小安装C. 自定义安装D. 仅连接10. 在SQL SERVER中局部变量前面的字符为:()(A)* (B)# (C)(D)11. 假如有两个表的连接是这样的: table_1 INNER JOIN table_2 其中table_1和table_2是两个具有公共属性的表,这种连接会生成哪种结果集?()(A)包括table_1中的所有行,不包括table_2的不匹配行(B)包括table_2中的所有行,不包括table_1的不匹配行(C)包括和两个表的所有行(D)只包括table_1和table_2满足条件的行12. 对视图的描述错误的是:()(A)是一虚拟的表(B)在存储视图时存储的是视图的定义(C)在存储视图时存储的是视图中的数据(D)可以像查询表一样来查询视图13. 在T-SQL语言中,若要修改某表的结构,应该使用的修改关键字是()。

(A)ALTER (B)UPDATE (C)UPDAET (D)ALLTER14. SQL Server 2008提供了一整套管理工具和实用程序,其中负责启动、暂停和停止SQL Server的4种服务的是()。

(A)企业管理器(B)导入和导出数据(C)事件探察器(D)服务管理器15. 要查询book表中所有书名中以“计算机”开头的书籍的价格,可用()语句。

(A)SELECT price FROM book WHERE book_name = ‘计算机*’(B)SELECT price FROM book WHERE book_name LIKE ‘计算机*’(C) SELECT price FROM book WHERE book_name = ‘计算机%’(D)SELECT price FROM book WHERE book_name LIKE ‘计算机%’16.SQL server 数据库文件有3类,其中日志文件的后缀为_____。

A. .ndf B..ldf C. .mdf D. .idf 17、根据关系数据基于的数据模型——关系模型的特征判断下列正确的一项:(___)A、只存在一对多的实体关系,以图形方式来表示。

B、以二维表格结构来保存数据,在关系表中不允许有重复行存在。

C、能体现一对多、多对多的关系,但不能体现一对一的关系。

D、关系模型数据库是数据库发展的最初阶段。

18、关系数据库中,主键是(__)。

A、为标识表中唯一的实体B、创建唯一的索引,允许空值C、只允许以表中第一字段建立D、允许有多个主键的19、表在数据库中是一个非常重要的数据对象,它是用来(__)各种数据容的A、显示B、查询C、存放D、检索20、为数据表创建索引的目的是(___)A、提高查询的检索性能B、创建唯一索引C、创建主键D、归类21、在Transact-SQL语法中,用来插入数据的命令是(___),用于更新的命令是(___)。

A、INSERT,UPDATEB、UPDATE,INSERTC、DELETE,UPDATED、CREATE,INSERT INTO22、在Transact-SQL语法中,SELECT语句的完整语法较复杂,但至少包括的部分(___)。

A、SELECT,INTOB、SELECT,FROMC、SELECT,GROUPD、仅SELECT23、视图是一种常用的数据对象,它是提供____和____数据的另一种途径,可以简化数据库操作,A、查看,存放B、查看,检索C、插入,更新D、检索,插入24、在SQL SERVER服务器上,存储过程是一组预先定义并(__)的Transact-SQL语句。

A、保存B、编译C、解释D、编写25、在SQL Server 2000中,索引的顺序和数据表的物理顺序相同的索引是()。

A.聚集索引B. 非聚集索引C.主键索引D.唯一索引二、填空题(每空1分,共10空,共计10分)1.数据库系统的特点分别是数据的结构化、、数据独立性和。

2. 在SQL Server 2008中,索引的顺序和数据表的物理顺序不相同的索引是___3. 如果要计算表中数据的平均值,可以使用的聚合函数________。

4. 游标的概念包括两个部分,它们是和。

5. 一个事务的操作必须是具备以下四个属性:原子性、、_________和持久性。

6. 在SQL Server 2008中,我们创建数据库的语句是,而修改数据库的语句是。

三、简答(每题5分,共10分)1. 声明一个长度为16的字符型变量“cname”, 并赋初值为”数据库系统概述”。

请按前面的要求写出相应语句。

2. 简述视图的意义和优点?四、程序阅读题(10分)下面程序段的功能是:在数据库中判断是否存在名为my_proc的存储过程,若存在,则删除之,然后创建同名的存储过程,该存储过程的功能是向author_id、author_name、address和telephone字段插入数据。

阅读并回答以下问题:USE bookdbGOIF EXISTS(SELECT ① FROM SysobjectsWHERE name=’my_proc’ and type=’ ②’)DROP PROC my_procGOCREATE PROC my_proca int,b char(8),c char(50)③INSERT INTO clients(client_id,client_name,address)VALUES(a,b,c)GO问题:(1)填写该程序段中空白处的容:①②③(2)任写一条调用该存储过程的语句。

五、编程题(20分,共4题)student表(学生表)course表(课程表)sc表(选课表)1、把course表中课程号为3的课程的学分修改为3。

(3分)2、在student表中查询年龄大于18的学生的所有信息,并按学号降序排列。

(4分)3、在以上三个表中查询选的课程的“学分”为3,并且成绩大于80的学生的学号、和性别。

(6分)4、为student表创建一个名称为my_trig的触发器,当用户成功删除该表中的一条或多条记录时,触发器自动删除SC表中与之有关的记录。

(注:在创建触发器之前要判断是否有同名的触发器存在,若存在则删除之。

)(7分)SQL Server数据库试题十及答案参考答案一、单项选择题(每题2分,共15题)1. C2.c3.D4.C5.B6.B7.C8.C9.A 10.D 11.D 12.D 13.C 14.D 15.D 25 C二、填空题(每空2分,共15空)1.数据共享可控冗余 2.GO 3. 64KB 4.非聚集索引 5.AVG函数 6.游标结果集游标位置 7.一致性隔离性 8.CREATE DATABASE ALTER DATABASE 9.约束默认值三、简答(10分)1.DECLARE cname char(16)SET cname=’数据库系统概述’或者是DECLARE cname char(16)SELECT cname=’数据库系统概述’2. 答:分割数据,简化优点简化操作提供自动的安全保护功能为数据库重构提供一定的逻辑独立性。

四、程序阅读题(5分)1. name P as2. EXEC my_proc 7,‘好’,‘考试书店’或者 EXEC my_proc a=7,b=‘好’,c=‘考试书店’五、编程题(25分,共4题)1、 (4分)update course (1分)set 学分=4 (2分)where课程号=2 (1分)2、select * from student where 年龄>18 order by 学号 desc (5分)3、(6分)方法1:select distinct student.学号,,性别 (1分)from student, course, sc (1分)where (student.学号=sc.学号) and (course.课程号=sc.课程号)and (course.学分=4) and (sc.成绩>80) (1+1+1+1分)方法2:select distinct student.学号,,性别 (1分)from student Inner Join (sc Inner Join course On course.课程号=sc.课程号)On student.学号=sc.学号 (2分+2分)where (course.学分=4) and (sc.成绩>80) (1分+1分)4、(10分)If exists(Select name From sysobjectsWhere name=’my_trig’and type=’tr’) (整个If语句 1分)Drop trigger my_trig (0.5分)Go (0.5分)Create trigger my_trig (1分)On student (0.5分)For Delete (1分)As (0.5分)Delete From sc (2分)Where 学号 in (Select 学号 From Deleted) (1分+2分) Go1加到100的存储过程:declare number int,varnumber intset number=0set varnumber=0while varnumber<=100beginset number = number+varnumberset varnumber=varnumber+1endselect number答案为5050。

相关主题