资源描述
———————— 装 —————————— 订 ———————— 线 ————————
辽源职业技术学院考试答案(五)
20 –20 学年第 学期期 《数据库SQL Server》考试试卷 命题教师: 审批人:
考试方式:笔试 答题时间 60 分钟 考生人数: 人
题号
一
二
三
四
五
六
七
八
九
总分
标准分
20
30
18
32
100
一、选择题(10*2分=20分)
1.数据库管理系统、操作系统、应用软件的层次关系从核心到外围分别是( B )
A.数据库管理系统、操作系统、应用软件
B.操作系统、 数据库管理系统、应用软件
C.数据库管理系统、应用软件、操作系统
D.操作系统、应用软件、数据库管理系统
2.只有( C )才能作为文件组的成员。
A.日志文件 B.索引文件 C.数据文件 D.备份文件
3. 下列四项中说法不正确的是( B )
A.数据库减少了数据冗余 B.数据库避免了一切数据的重复
C.数据库中的数据可以共享 D.数据库具有较高的数据独立性
4.表示职称为副教授同时性别为男的表达式为( B )
A. 职称='副教授' OR 性别='男' B. 职称='副教授' AND 性别='男'
C. IN ('副教授','男') D. BETWEEN '副教授' AND '男'
5. 下面哪个不是SQL Server 的合法标识符( C )
A. a12 B. @a12 C. 12a D. #qq
6.对一个已创建的表,( B )操作是不可以的。
A.修改已有列的属性 B.将已有text数据类型修改为image数据类型
C.更改表名 D.增加或删除列
7.命令SELECT s_no,AVG (grade) AS ‘平均成绩’ FROM score GROUP BY s_no HAVING
AVG (grade )>=85,表示( A )
A.找score 表中平均成绩在85 分以上的学生的学号和平均成绩
B.查找score 表中各科成绩在85 分以上的学生的学号和平均成绩
C.查找score 表中各科成绩在85 分以上的学生
D.查找平均成绩在85分以上的学生
8.某数据表已经将列F定义为主关键字,则以下表述中错误的是( B )
A.列F的数据是有序排列的
B.当为其他列建立非聚集索引时,将导致此数据表的记录重新排列
C.不能再给此数据表建立聚集索引
D.列F的数据在整个数据表中是唯一存在的
9.下面关于存储过程的描述不正确的是( D )
A.存储过程实际上是一组T-SQL语句
B.存储过程可以完成某一特定的业务逻辑
C.存储过程独立于数据库而存在
D.存储过程预先被编译存放在服务器的系统表中
10.以下关于默认值的表述,正确的是( B )
A.在表中添加新列时,如果没有指明值.可以使用默认值
B.可以绑定到表列,也可以绑定到数据类型
C.可以响应特定事件的操作
D.以上表述都正确
二、填空题(15*2分=30分)
1.数据库系统的三级模式结构和两级数据映像确保了数据的(逻辑)独立性和( 物理 )独立性。
2.语句 select floor(17.4), floor(-214.2), round(13.4382,2), round(-18.4562,3)的执行结果是: ( 17)、( -215 )、( 13.44000 )和( -18.4560 )。
3.SQL Server 2000 以( # )开头的标识符,表示临时表或过程;
4.T-SQL 语言中,有( 算术 )运算、字符串连接运算、( 关系 )运算和(逻辑)运算。
5.Left join 运算是(左外部连接)。
6.完整性约束包括( 实体)完整性、( 域)完整性、参照完整性和用户定义完整性。
7. SQL Server 2000 采用的身份验证模式有(Windows身份验证)模式和(混合 )模式。
三、简答题(3*6分=18分)
1.举例说明在定义一个表结构时,需定义哪些方面的内容?
create table student(s_no char(5) primary key,
s_name char(8) not null,
s_age int)
此SQL创建一个表student,三个字段,指定了字段名称和数据类型,设置s_no为主键,s_name字段设置了非空约束。
2.数据库包含哪些后缀名的文件?这些文件分别存放什么信息?
(1).mdf主要数据文件:包括数据库对象,可用作存储系统表和对象,该文件包含数据库的启动信息,并用于存储数据。
(2).ndf次要数据文件:用作存储用户数据和对象。
(3).ldf事务日志文件:包含用于恢复数据库的日志信息。
3.简述触发器的作用及触发器的触发方式?
触发器是一种特殊类型的存储过程,它在指定的表中的数据发生变化时自动生效。触发器被调用时自动执行INSERT、UPDATE、DELETE语句和SELETE语句,实现表间的数据完整性和复杂的业务规则。触发器的触发方式:after触发、instead of触发。
四、程序题(32分,1-4题各6分,5题8分)
数据表:information(s_no(学号),s_name(姓名),s_age(年龄),s_sex(性别),s_birth(出生日期))
Score(c_no(课程号),c_name(课程名),s_no(学号),grade(成绩))
1、查询所有女学生记录,并按出生日期降序排序。
select * from information
Where s_sex=’女’
Order by s_birth desc
2、查询每名学生的平均成绩。
select s_no,avg(grade)
From score
Group by s_no
3、向score表中插入一条记录(‘s06’,‘计算机基础’,‘01’,85)
insert into score(c_no,c_name,s_no,grade)
Values(‘s06’,‘计算机基础’,‘01’,85)
4、查询年龄在20-25范围内的学生信息。
select * from information
Where s_age between 20 and 25
5、编写存储过程up_sum,实现计算1!+2!+…+N!
create proc up_sum(@n int)
Declare @nn int , @i int,@sum int
Set @nn=1
Set @sum=0
Set @i=1
While @i<=@n
Begin
Set @nn=@nn*@i
Set @i=@i+1
Set @sum=@sum+@nn
End
Print ‘1!+2!+…+N!的值是’+str(@sum)
End
展开阅读全文