福建对外经济贸易职业技术学院
20 —20 学年度第一学期期末考试(A 卷) 课程名称:数据库应用 适用班级:
系别: 专业: 考试日期: 姓名: 班级: 学号:
第一部分:理论题 30%
一、 单项选择(每题1分,共10分)
1、在SQL Server 中,二级数据文件的扩展名( B )。
A) .Mdf B) .Ldf C) .Ndf D) .Vbf
2、在SQL Server 中,数据查询的语句是( A )。
A)Select
B) Grant C)Alter D) Create
3、在SQL Server 中,用于查询结果进行分组时用( B )语句。
A )Order By B) Group By C) In D) Exists 4、局部变量一般为( C )开头。
A) ‘变量名 B) @ @变量名 C) @变量名 D) /*……*/变量名 5、在SQL Server 中,特殊的账号为( D )。
A) Dbo B) Sa C) As D) Guest
6、下列哪一个数据库不是SQL Server 的系统数据库( C )。 A) Master 数据库 B) Msdb 数据库
C) Pubs 数据库 D) Model 数据库
7、如果要去掉SQL 结构中的重复行,应在查询语句中加入( C )。
A )Delete B) Top C) Distinct D) Update
8、在Transact-SQL 语法中,用于更新的命令是( B )。
A) Insert , B) Update C) Delete , D) Create 9、全局变量一般为( B )开头。
A)/*……*/变量名 B) @ @变量名 C) @变量名 D) ‘变量名
10、要将一组语句执行10次,下列( B )结构可以用来完成此项任务。
A) if …else B) Where C) case
D) 以上都不是
二、 填空题(每空1分,共20分) 1、在一个表上能创建( 1 )个主键约束,主键值( 不能)为空。在一个表上能创建(多 )个惟一约束,惟一值(可以 )为空。
2、在企业管理器中,右击要操作的数据库,在快捷菜单中选择( 新建数据库、 )命令创建数据库,选择(查看—任务板 )命令查看数据库定义信息,( 属性—
选项 )命令设置数据库选项,选择( 属性—数据文件和事务日志 )命令
修改数据库结构。
3、规则的作用是( 限制字段输入数据的范围)。创建规则用( CREATE RULE )语句,删除规则用( DROP RULE )语句,在列或自定义数据类型上绑定规则用( sp_bindrule )语句。解除绑定的规则用(sp_unbindrule )语句,再次向已经绑定了规则的列上绑定规则,将会( 自动替换原有的旧规则 )。
4、视图是由( SELECT 查询语句 )构成而不是由( 实际数据 )构成的虚表。视图中的数据存储在( 数据表中 )。对视图更新操作实际操作的是( 基表 )。
5、在SQL Server 的数据库中按存储结构的不同将索引分为两类(簇索引 )和(非簇索引 )。
第二部分:操作题 70%
将数据文件附加到SQL SERVER 中,再进行以下操作;考试结束后,注意先分离数据库,再提交考试文件夹。 三、 数据表(共20分)
1、创建“学生情况”表,结构如下:
2、创建规则对象“必须为7位数字”和默认值对象“是团员”,并分别绑
定到“学生情况”表的“学号”字段和“是否团员”字段
3、将下表数据插入到“学生情况”表中
0100001 10101 冯东梅 女 1990-12-26 165 北京 1 0100002 10101 章蕾 女 1989-2-18 166 上海 1 0100003 10101 顾晓兰 男 1988-10-21 175 天津 1 0100004 10102 王蓉梅 女 1989-12-22 163 重庆 0 0100005 10102 邹忠芳 男 1990-1-1 171 北京 1 0100006 10102 李道兰 女 1990-12-12 164 上海 1 0100007 10102 闻维祥 男 1989-2-18 172 天津 1 0100008 10111 黎念真 女 1989-8-19 162 重庆 1 0100009 10111 钟开才 男 1988-8-8 165 广东 1 0100010 10111
赵丹
女
1988-6-28
145 北京
4、设置外键约束,建立这四张表的表间联系 四、 视图与查询(40分)
1、创建视图“学生选课成绩信息”,包含班级代号、班级名称、学号、姓名、课程号、课程名称、平时成绩、考试成绩、总评成绩和学分
Create view
As
Select班级代号,班级名称,学号,姓名,课程号,课程名称,平时成绩,考试成绩,总评成绩=平时成绩*0.3+考试成绩*0.7,学分
from 学生情况,课程,选课
where 学生情况.学号=选课.学号 and 选课.课程号=课程.课程号
2、在“学生情况”表中查询身高在前三名的女生的所有信息
Select top 3 * from 学生情况 where 性别=‘女’order by 身高
3、在“学生情况”表中查询出生地在北京女生的所有信息。
Select * from 学生情况 where 家庭所在地=’北京’ and 性别=’女’
4、在“学生情况”表中查询所有男生的平均身高,最高身高和最低身高。Select avg(身高),max(身高),min(身高) from 学生情况 where 性别=男’’
5、在“学生情况”表中查询出生年月日相同的学生信息
Select a.学号,a.姓名,a.性别,a.出生年月,a.家庭所在地 from 学生情况 a,学生情况 b where a.出生年月=b.出生年月 and a.学号<>b.学号
6、通过“选课及成绩”表,查询在“课程档案”中没有学生选修的课程,显示其课程代号和课程名称
Select 课程代号,课程名称 from 课程档案 where 课程代号 not in (select dinstinct 课程代号 from 选课及成绩 )
7、在“学生情况”表中分组统计男女生的身高
Select 性别,avg(身高),max(身高),min(身高) from 学生情况 group by 性别
8、在“学生选课成绩信息”视图中统计各班级各门课程的参加考试人数
和总评成绩的平均分
Select count(学号),avg( 总评成绩) from 学生选课成绩 group 班级,课程名称
五、索引(10分)
1、为“学生情况”表创建一个基于“学号”的唯一的簇索引
Create unique clustered index px_学号on 学生情况(学号)
2、为“学生情况”表创建一个基于“姓名”的非簇索引
Create index px_姓名 on 学生情况(姓名)