(高职)《SQL Server数据库技术》期末考试卷综合测试题带答案2.doc
(装订线内不准做答)线订装 SQL Server数据库技术 考试试卷(B)题号一二三四五六七八九十总分核分教师分值30122632100得分评卷教师B考试科目SQL Server数据库技术考试类型高职期末考试 闭卷学年学期适用专业年 级教研室主任一、选择题(在每个小题四个备选答案中选出一个正确答案,填在题末的括号中)(本大题共20小题,每小题1.5分,总计30分)1、若某表满足1NF,且其所有属性合起来组成主健,则一定还满足范式 ( )A、只有2NFB、只有3NFC、2NF和3NFD、没有2、Microsoft SQL Server 2000各版本的服务器组件必须在特定的操作系统上使用,其中能在Windows 2000 Professional上运行,但不能在Windows 98上运行的是( )A、企业版 B、标准版C、个人版D、开发版3、SQL Server支持在线备份,但在备份过程中,不允许执行的操作是( )(1)、创建或删除数据库文件(2)、创建索引(3)、执行非日志操作(4)、自动或手工缩小数据库或数据库文件大小A、(1)B、(1)(2)C、(1)(2)(3)D、(1)(2)(3)(4)4、SQL语言中,条件“年龄BETWEEN 20 AND 30”表示年龄在20至30之间,且( )。A. 包括30岁但不包括20岁B.不包括20岁和30岁C.包括20岁但不包括30岁D.包括20岁和30岁5、现有关系:学生(学号,姓名,系号,系名),为消除数据冗余,至少需要分解为( ) A、1个表B、2个表C、3个表 D、4个表6、数据库中存放三个关系:学生(学号,姓名)和课程(课程号,课程名)和成绩(学号、课程号、成绩),为快速查出某位学生所学的课程名,应该( ) A、在学生表上按学号建索引 B、在成绩表上按课程号建索引 C、在课程表上按课程号建索引 D、在学生表上按姓名建索引7、如果要从数据库中删除触发器,应该使用SQL语言的命令( ) A、DELETE TRIGGER B、DROP TRIGGER C、REMOVE TRIGGER D、DISABLE TRIGGER8、已知员工和员工亲属两个关系,当员工调出时,应该从员工关系中删除该员工的元组,同时在员工亲属关系中删除对应的亲属元组。在SQL语言中利用触发器定义这个完整性约束的短语是( ) A、INSTEAD OF DELETE B、INSTEAD OF DROP C、AFTER DELETE D、AFTER UPDATE9、安装MS SQL Server时,系统自动建立几个数据库,其中有一个数据库记录了一个SQL Server系统的所有系统信息,这个数据库是( ) A、master数据库 B、model数据库 C、tempdb数据库 D、pubs数据库10、对于数据库的管理,对SQL Server中guest用户的描述错误的是 ( ) A、安装系统时,guest用户被加入到master、pubs、tempdb、northwind数据中B、用户成功登录到SQL Server后,若该登录账号在某数据库中无合法数据库用户,则系统将可能允许以guest用户来访问该数据库C、不能从master、tempdb数据库中删除guest用户D、在新建一个数据库时,guest用户将被自动添加11、公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从部门到职员的联系类型是( ) A、多对多 B、一对一C、多对一D、一对多12、以下情况发生,往往要求我们立即对master 数据库进行备份,错误的是( ) A、增加用户数据库B、删除用户数据库 C、执行与登录有关的操作 D、增加数据库用户13SQL语言中,删除一个表中所有数据,但保留表结构的命令是( ) A、DELETE B、DROPC、CLEAR D、REMORE14、下列四项关于启动服务器的说法不正确的是( ) A、用企业管理器启动B、用操作系统控制面板的服务管理程序启动 C、用命令net begin mssqlserverD、自动启动服务器15、查询员工工资信息时,结果按工资降序排列,正确的是( )A、ORDER BY 工资B、ORDER BY 工资 descC、ORDER BY 工资 ascD、ORDER BY 工资 dictinct16、下列聚合函数中正确的是( ) A、SUM (*) B、MAX (*) C、COUNT (*) D、AVG (*)17、用于模糊查询的匹配符是( )。A. _ B. C. D. LIKE18、在MS SQL Server中,关于数据库的说法正确的是( )A、一个数据库可以不包含事务日志文件B、一个数据库可以只包含一个事务日志文件和一个数据库文件C、一个数据库可以包含多个数据库文件,但只能包含一个事务日志文件D、一个数据库可以包含多个事务日志文件,但只能包含一个数据库文件19、能够实现执行SQL语句、分析查询计划、显示查询统计情况和实现索引分析等功能的SQL工具是( )。A、企业管理器B、查询分析器C、服务管理器D、事件探查器20、每个数据库有且只有一个( )A、主要数据库文件B、次要数据库文件C、日志文件D、索引文件二、名词解释(每题4分,共12分)21、视图22、索引23、触发器三、填空题(每题2分,共26分)24、MS SQL Server提供多个图形化工具,其中用来启动、停止和暂停SQL Serve的图形化工具称为_。25、 _是已经存储在SQL Server服务器中的一组预编译过的Transact-SQL语句。26、 _身份验证模式,输入的账号必须是在2000 professional(或NT)已经建立的登录者或组。27、 HAVING子句与WHERE子句很相似,其区别在于:_28、 WHERE子句作用的对象是_,HAVING子句作用的对象是_。29、 已知有学生关系S(SNO,SNAME,AGE,DNO),各属性含义依次为学号,姓名、年龄和所在系号;学生选课关系SC(SNO,CNO,SCORE),各属性含义依次为学号、课程号和成绩。分析以下SQL语句: SELECT SNO FROM SC WHERE SCORE= (SELECT SUM(SCORE) FROM SC WHERE CNO='002') 简述上述语句完成了的查询操作是_。30、 表或视图的操作权限有select、_、_、_。 31、 创建、修改和删除表命令分别是_ table、_ table和_ table。 操作题部分(注意:所有操作画面都应保存在以自己姓名命名的WORD文档中,代码的保存请按题目的编号来命名,代码无需记录在试卷上。最后所有的代码和操作画面文件应以一个压缩文件包的形式递交,压缩包以自己的2位学号+姓名的形式命名,如“01王明”。考试期间,一定要注意文件的保存。)四、设计题(每小题4分, 8小题共32分)32、设有学生选修课程数据库, 学生表(学号,姓名,年龄,性别,所在系,地址,出生日期) 选课表(学号,课程号,成绩) 课程表(课程号,课程名称,教师姓名) 用SQL语言查询下列问题: 1) 李小民老师所教的课程号、课程名称。 2) 年龄大于23岁的女学生的学号和姓名。 3)“李小波”所选修的全部课程名称。 4)所有成绩都在80分以上的学生姓名及所在系。 5)没有选修“操作系统”课的学生姓名。 6)英语成绩比数学成绩好的学生。 7)至少选修两门以上课程的学生姓名、性别。 8)选修了李小民老师所讲课程的学生人数。 SQL Server数据库技术B卷评分标准及参考答案一、选择题(每题1分,共20分)12345678910CDDDBDBCAD11121314151617181920DDACBCCBBA二、名词解释(每题4分,共12分)1、视图是由一个或多个数据表(基本表)或视图导出的虚拟表或查询表。2、索引就是表中数据和相应存储位置的列表。3、触发器是特殊类型的存储过程,它能在任何试图改变表或视图中由触发器保护的数据时执行。触发器主要通过操作事件(INSERT、UPDATE、DELETE)进行触发而被自动执行,不能直接调用执行,也不能被传送和接受参数。三、填空题(每题1分,共10分)1服务管理器2存储过程3Windows4表和视图,分组5检索有与课程号为“002”的课程的最高成绩相等的同学的学号insert、update、deletealter、drop四、设计题(1-8小题每题4分,第9小题2分,共34分)1)select 课程号, 课程名称from 课程表where 教师姓名='李小民'2)select 学号, 姓名 from 学生表 where (性别='女') and (年龄>23)3)select 课程名称 from 课程表where 课程号 in (select 选课表.课程号 from 选课表,学生表 where (选课表.学号=学生表.学号) and (学生表.姓名='李小波')4)select 姓名, 所在系 from 学生表 where 学号 in(select distinct 学号from 选课表 where 成绩 >= 80) 5)没有选修“操作系统”课的学生姓名。 select distinct 学生表.学号, 姓名 from 学生表, 选课表, 课程表 where (选课表.学号=学生表.学号) and (选课表.课程号=课程表.课程号) and (课程名称 <>'操作系统') 6)英语成绩比数学成绩好的学生。 create function 课程成绩(课程名 nchar(255), 学号 char(6) returns numeric as begin declare i numeric select i=成绩 from 选课表, 课程表 where (学号 = 学号) and (选课表.课程号 =课程表.课程号) and (课程名称 = 课程名) return i endselect 学号, 姓名, 英语成绩= dbo.课程成绩('英语',学号), 数学成绩= dbo.课程成绩('数学',学号) from 学生信息表 where dbo.课程成绩('英语',学号)>dbo.课程成绩('数学',学号)7)至少选修两门以上课程的学生姓名、性别。 select 姓名, 性别 from 学生表where 学号 in(SELECT 学号 FROM 选课表group by 学号 having count(学号)>1)8)选修了李老师所讲课程的学生人数。 select count(学号) from 选课表, 课程表 where (选课表.课程号=课程表.课程号) and (教师姓名='李老师')9)“操作系统”课程得最高分的学生姓名、性别、所在系。select top 1 学生表.学号, 姓名, 所在系 from 学生表, 选课表, 课程表 where (选课表.学号=学生表.学号) and (选课表.课程号=课程表.课程号) and (课程名称 = '操作系统') order by 成绩 desc第6页(共4页)