《2016sql数据库期末考试题及答案(共7页).doc》由会员分享,可在线阅读,更多相关《2016sql数据库期末考试题及答案(共7页).doc(7页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上一、单选题(共 10 道试题,共 50 分。)V 1. SQL Server中,保存着每个数据库对象的信息的系统表是( C)。A. sysdatabasesB. SyscolumnsC. SysobjectsD. Syslogs2. 在存在下列关键字的SQL语句中,不可能出现Where子句的是(D )。A. UpdateB. DeleteC. InsertD. Alter3. 在查询语句的Where子句中,如果出现了“age Between 30 and 40”,这个表达式等同于(A )。A. age>=30 and age<=40B. age>=3
2、0 or age<=40C. age>30 and age<40D. age>30 or age<404. 如果要在一张管理职工工资的表中限制工资的输入范围,应使用(D )约束。A. PDRIMARY KEYB. FOREIGN KEYC. uniqueD. check5. 记录数据库事务操作信息的文件是(D )。A. 数据文件B. 索引文件C. 辅助数据文件D. 日志文件6. 要查询XSH数据库CP表中产品名含有“冰箱”的产品情况,可用( C)命令。A. SELECT * FROM CP WHERE 产品名称 LIKE 冰箱B. SELECT * FROM XS
3、H WHERE 产品名称 LIKE 冰箱C. SELECT * FROM CP WHERE 产品名称 LIKE %冰箱%D. SELECT * FROM CP WHERE 产品名称=冰箱7. 储蓄所有多个储户,储户能够在多个储蓄所存取款,储蓄所与储户之间是(D )。A. 一对一的联系B. 一对多的联系C. 多对一的联系D. 多对多的联系8. SQL的聚集函数COUNT、SUM、AVG、MAX、MIN不允许出现在查询语句的( D)子句之中。A. SELECTB. HAVINGC. GROUP BY HAVINGD. WHERE9. 列值为空值(NULL),则说明这一列( C)。A. 数值为0B.
4、 数值为空格C. 数值是未知的D. 不存在10. 数据库的数据一般存放在(D )中。A. 内存B. CPUC. 寄存器D. 磁盘二、判断题(共 10 道试题,共 50 分。)1. 如果定义视图的FROM子句包括多张表,并且视图中列来自多张表,则不能用DML语句通过视图操纵数据。BA. 错误B. 正确2. 在sysdatabases中,还记录着存储过程中每个参数的信息。AA. 错误B. 正确3. 在SELECT语句中,当使用ORDER BY子句时,一定要使用GROUP BY子句。AA. 错误B. 正确4. 由于索引是独立的,删除表时,与该表相关的索引并不被删除。AA. 错误B. 正确5. 日志文
5、件用于存放恢复数据库用的所有日志信息,每个数据库至少拥有一个日志文件,也可以拥有多个日志文件,扩展名ldf BA. 错误B. 正确6. 使用INSERT命令一次只能插入一行数据。A (SQL SERVER 只能插入一行)A. 错误B. 正确7. 已使用DROP TABLE除去删除表,若要删除表上的视图,必须通过使用DROP VIEW手工删除。BA. 错误B. 正确8. SQL Server存储过程能够立即访问数据库。BA. 错误B. 正确9. 两个空值相比较的结果是未知。BA. 错误B. 正确10. 在INSERT语句中,VALUES列表中的表达式的数量,必须匹配列表中的列数,表达式的数据类型
6、必须可以和表格中对应各列的数据类型兼容。BA. 错误B. 正确SQL Server数据库试题十及答案一、 单项选择题(每题2分,共15题)1. SQL Server 2000是一个(C )的数据库系统。(A)网状型 (B)层次型 (C)关系型 (D)以上都不是2. DTS 是一个简称,它的全称是(B )。A. 数据运输系统 B. 数据传输服务 C. 数据库传输系统 D. 数据库运输服务3. SQL Server 2000 采用的身份验证模式有( D)。(A)仅Windows身份验证模式 (B)仅SQL Server身份验证模式(C)仅混合模式(D)Windows身份验证模式和混合模式4. SQ
7、L 语言按照用途可以分为三类,下面选项中哪一种不是的:( C)(A)DML (B)DCL (C)DQL (D)DDL5. 在SELECT语句的WHERE子句的条件表达式中,可以匹配0个到多个字符的通配符是(B )(A) * (B)% (C)- (D)?6. SQL Server提供的单行注释语句是使用( B)开始的一行内容。(A) “/*” (B) “-” (C) “” (D) “/”7. 以下那种类型能作为变量的数据类型( C)。(A)text (B)ntext (C)table (D)image8. 下面不属于数据定义功能的SQL语句是:( C)A.CREATE TABLE B.CREAT
8、E CURSOR C.UPDATE D.ALTER TABLE9. 如果希望完全安装SQL Server,则应选择( A)。A. 典型安装B. 最小安装C. 自定义安装D. 仅连接10. 在SQL SERVER中局部变量前面的字符为:( D)(A)* (B)# (C) (D) 11. 假如有两个表的连接是这样的: table_1 INNER JOIN table_2 其中table_1和table_2是两个具有公共属性的表,这种连接会生成哪种结果集?(D )(A) 包括table_1中的所有行,不包括table_2的不匹配行(B) 包括table_2中的所有行,不包括table_1的不匹配行(
9、C) 包括和两个表的所有行(D) 只包括table_1和table_2满足条件的行12. 对视图的描述错误的是:(D )(A) 是一张虚拟的表(B) 在存储视图时存储的是视图的定义(C) 在存储视图时存储的是视图中的数据(D) 可以像查询表一样来查询视图13. 在T-SQL语言中,若要修改某张表的结构,应该使用的修改关键字是( C)。(A)ALTER (B)UPDATE (C)UPDAET (D)ALLTER 14. SQL Server 2000提供了一整套管理工具和实用程序,其中负责启动、暂停和停止SQL Server的4种服务的是(D )。(A)企业管理器 (B)导入和导出数据 (C)事
10、件探察器 (D)服务管理器15. 要查询book表中所有书名中以“计算机”开头的书籍的价格,可用( D)语句。(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 计算机% 二、 填空题(每空2分,共15空)1数据库系统的特点分别是数据的结构化、 、数据独
11、立性和 。2在SQL Server 2000中,一个批处理语句是以 结束的。3. SQL Server 2000中的数据以页为基本存储单位,而8个相邻的页称为扩展盘区,那么扩展盘区的大小应该为 。4. 在SQL Server 2000中,索引的顺序和数据表的物理顺序不相同的索引是_。5. 如果要计算表中数据的平均值,可以使用的聚合函数是_ _。6. 游标的概念包括两个部分,它们是 和 。7. 一个事务的操作必须是具备以下四个属性:原子性、 、_和持久性。8. 在SQL Server 2000中,我们创建数据库的语句是 ,而修改数据库的语句是 。9. 在我们说到数据完整性时,使用 是优先于使用触
12、发器、规则 和 。三、 简答(10分)1. 声明一个长度为16的字符型变量“cname”, 并赋初值为”数据库系统概述”。请按前面的要求写出相应语句。2. 在字符串中,我们应该怎样来产生一个回车并生成一个新行?四、 程序阅读题(10分)下面程序段的功能是:在 数据库中判断是否存在名为my_proc的存储过程,若存在,则删除之,然后创建同名的存储过程,该存储过程的功能是向author_id、author_name、address和telephone字段插入数据。阅读并回答以下问题: USE bookdbGO IF EXISTS(SELECT FROM Sysobjects WHERE name=
13、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表(学生表)学号姓名性别年龄系别1吴好男18计算机系2崔平女21经管系3钱筱女19电子系course表(课程表) sc表(选课表)课程号课程名学分1SQL Server42数
14、据结构33专业英语2学号课程号成绩11882190227033791、 把course表中课程号为3的课程的学分修改为3。(3分)2、 在student表中查询年龄大于18的学生的所有信息,并按学号降序排列。(4分)3、 在以上三个表中查询选的课程的“学分”为3,并且成绩大于80的学生的学号、姓名和性别。(6分)4、为student表创建一个名称为my_trig的触发器,当用户成功删除该表中的一条或多条记录时,触发器自动删除SC表中与之有关的记录。(注:在创建触发器之前要判断是否有同名的触发器存在,若存在则删除之。)(7分)参考答案一、 单项选择题(每题2分,共15题)1. C 2.B 3.D
15、 4.C 5.B 6.B 7.C 8.C 9.A 10.D 11.D 12.D 13.C 14.D 15.D二、 填空题(每空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.CHAR(13)+CHAR(10)四、 程序阅读题(5
16、分)1 name P as 2. 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分)1分 1分 1分 2分3、(6分)方法1:select distinct student.学号,姓名,性别 (1分)from student, course, sc (1分)where (student.
17、学号=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 sysobjects Where name=my_trigand 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分)Go专心-专注-专业