资源描述
(装订线内不准做答)
线
订
装
网络数据库 考试试卷(B)
题号
一
二
三
四
五
六
七
八
九
十
总分
核分教师
分值
10
10
30
10
40
100
得分
评卷教师
B
考试科目
网络数据库
考试类型
高职期末考试 『闭卷』
学年学期
2006
-
2007
学年第
二
学期
适用专业
年 级
小学教育 四年级
教研室主任
一、选择题(在每个小题四个备选答案中选出一个正确答案,填在题末的括号中)(本大题共10小题,每小题1分,总计20分)
1.SQL Server系统中的所有服务器级系统信息存储于哪个数据库( )。
A. master B. model
C. tempdb D. msdb
2.下列标识符可以作为局部变量使用( )。
A. Myvar B. My var
C. @Myvar D. @My var
3.以下关于主键的描述正确的是( )。
A.标识表中唯一的实体 B.创建唯一的索引,允许空值
C.只允许以表中第一字段建立 D.表中允许有多个主键
4.为数据表创建索引的目的是( )。
A.提高查询的检索性能 B.创建唯一索引
C.创建主键 D.归类
5.下列哪个不是sql 数据库文件的后缀。
A..mdf B..ldf
C..dbf D..ndf
6.在SQL SERVER服务器上,存储过程是一组预先定义并( )的Transact-SQL语句。
A.保存 B.编译
C.解释 D.编写
7.数据定义语言的缩写词为 ( )。
A.DDL B.DCL
C.DML D.DBL
8.以下关于外键和相应的主键之间的关系,正确的是( )。
A.外键并不一定要与相应的主键同名
B.外键一定要与相应的主键同名
C.外键一定要与相应的主键同名而且唯一
D.外键一定要与相应的主键同名,但并不一定唯一
9.在数据库设计中使用E-R图工具的阶段是( )。
A.需求分析阶段
B.数据库物理设计阶段
C.数据库实施
D.概念结构设计阶段
10.在T-SQL语言中,修改表结构时,应使用的命令是( )
A.UPDATE B. INSERT
C. ALTER D. MODIFY
二、判断题:(对的打√,错的打×,填在题末的括号中)(每小题1分,共10分)
11. 因为通过视图可以插入.修改或删除数据,因此视图也是一个实在表,SQL SERVER将它保存在syscommens系统表中。( )
12. guest用户必须关联一个登录账号才可以在数据库中创建。数据库中的非guest用户账号都必须关联一个登录账号。( )
13. 可以在企业管理器中修改数据库的名称。( )
14. 恢复数据,可以在查询分析器中使用这样的命令:BACKUP DATABASE database_name FROM backup。( )
15. DELETE语句只是删除表中的数据,表本身依然存在数据库中。( )
16. 每个存储过程向调用方返回一个整数返回代码。如果存储过程没有显式设置返回代码的值,则返回代码为 0,表示成功。( )
17. 在数据库中建立的索引越多越好。( )
18. 在SQL SERVER中,触发器的执行是在数据的插入.更新或删除之前执行的。( )
19. 并发性就是两个或两个以上的用户同时对数据执行的操作。( )
20.通配符“_”表示某单个字符。 ( )
三、填空题(每空1分,共30分)
21. 目前最常用的数据库有层次数据库、_________数据库和_________数据库,其中_________数据库是目前应用最广泛的一种数据库。
22. 关系数据模型的逻辑结构是__________,关系中的列称为________,行称为________。
23. 关系数据库模型的数据操作主要包括插入、________、________和________数据。
24. SQL、DCL和DML缩写词的意义是___________语言、___________语言和___________语言。
25.实体之间的联系类型有三种,分别为________、________和________。
26.数据库系统的三级模式结构和两级数据映像确保了数据的________独立性和________独立性。
27.SQL Server 2000提供的数据库备份方法有_______数据库备份和________数据库备份、____________备份和________________备份。
28.SQL Server代理主要由______、______和_____来组成。
29.SQL Server复制把服务器分为______服务器、______服务器和_____服务器三种。
30.在SQL中,create view、alter view和drop view命令分别为________、________和________视图的命令。
四、简述题(每小题5分,共10分)
31.简述规范设计方法中,数据库应用系统开发的全过程。
32.创建数据库有那几种方法?
Ⅱ操作题部分
(注意:所有操作画面都应保存在以自己姓名命名的WORD文档中,代码的保存请按题目的编号来命名,代码无需记录在试卷上。最后所有的代码和操作画面文件应以一个压缩文件包的形式递交,压缩包以自己的2位学号+姓名的形式命名,如“01王明”。考试期间,一定要注意文件的保存。)
五、程序设计题(每小题5分,共40分)
有一个[学生课程]数据库,数据库中包括三个表:
学生表:Student由学号(Sno)、姓名(Sname)、性别(Ssex)、年龄(Sage)、所在系(Sdept)五个属性组成,记为:Student(Sno,Sname,Ssex,Sage,Sdept),Sno 为关键字。
课程表:Course由课程号(Cno)、课程名(Cname)、先修课号(Cpno)、学分(Ccredit)四个属性组成,记为: Course(Cno,Cname,Cpno,Ccredit) Cno为关键字。
成绩表:SG由学号(Sno)、课程号(Cno)、成绩(Grade)三个属性组成,记为: SG(Sno,Cno,Grade) (SNO, CNO) 为关键字。
用SQL语言实现下列功能:
33.建立学生表[Student],其中学号属性不能为空,并且其值是唯一的。(5分)
34.查考试成绩有不及格的学生的学号。(5分)
35. 将学号为05001学生的年龄改为22岁。(5分)
36.计算1号课程的学生平均成绩。(5分)
37. 创建存储过程[getDetailByName],通过输入参数学生姓名(如"张三"),筛选出该学生的基本信息,对不存在此学生姓名的输入值,必须作一检测,打印信息“不存在此学生”。(5分)
38. 查计算机系姓赵的男同学的姓名(Sname)、性别(Ssex)、年龄(Sage)。(5分)
39.创建视图[学生成绩表视图],视图中包括学号(Sno)、姓名(Sname)、课程号(Cno)、课程名(Cname)、成绩(Grade)。(5分)
40.将一个新学生记录(学号:05020;姓名:丁莉;性别:女;年龄:17岁;所在系:计算机;)插入Student表中。(5分)
一、选择题(在每个小题四个备选答案中选出一个正确答案,填在题末的括号中)(本大题共10小题,每小题1分,总计20分)
1
2
3
4
5
6
7
8
9
10
D
C
A
C
A
A
B
D
A
C
二、判断题:(对的写N,错的写Y,填在题末的括号中)(每小题1分,共10分)
11
12
13
14
15
16
17
18
19
20
N
N
N
N
N
N
N
Y
Y
N
三、填空题(每空1分,共20分)
1. 选择、投影、连接
2. @、@@
3. 68
4. BEAUTIFAL、我心中的太阳
5. select、insert、update、delete
6. 水平、垂直
7. 作业、操作员
8. 实体、域、参照、用户自定义
四、简述题(每小题5分,共10分)
1. 将每个学生的学号和课程号定义为复合主键这样才能保证每个学生的每门课程惟一。
2. 要点:
(1)域完整性 :使用DEFAULT (默认值)、DEFAULT(默认技术)、CHECK(检查)、RULE (规则技术)的方法指定某列可接受值的范围或模式
(2)实体完整性:使用 PRIMARY KEY(主键)、UNIQUE(惟一键)、IDENTITY(标识列)来确保行的惟一性
(3)参照完整性:使用 FOREIGN KEY(外键) 保证列与参照列的一致性
五、程序设计题(共40分)
1.
create database [教师数据库]
use [教师数据库]
go
create table 教师表
([编号] char(6) primary key,
[姓名] nchar(4) not null,
[性别] nchar(1) check([性别] in ('男', '女')),
[民族] nchar(8) default '汉族' not null,
[职称] nchar(12),
[身份证号] char(18) unique
)
create table 课程表
([课号] char(6) primary key,
[名称] char(40) not null
)
create table 任课表
(ID IDENTITY(1, 1),
[教师编号] char(6) references 学生表(学号),
[课号] char(6) references 课程表(课号),
[课时数] integer check([课时数] between 0 and 200)
)
2.
insert 课程表 values('100001', 'SQL Server数据库')
insert 课程表 values('100002', '数据结构')
insert 课程表 values('100003', 'VB程序设计')
update 课程表 set 名称='Visual Basic程序设计' where 课号='100003'
delete 课程表 where 课号='100003'
3.
create view [任课表视图] as
select 教师编号,姓名,课号, 课程名称,课时数 from 教师表,任课表
where 教师表.编号=任课表.教师编号
4.
create function [某门课任课教师](@课程名 varchar(15))
returns table as
return (select 课程名称, 课时数, 教师姓名=姓名 from 任课表视图
where 课程名=@课程名)
go
select * from [某门课任课教师]('SQL Server数据库')
5.
create procedure [统计课时数]
as
select 最大课时数=max(课时) ,最小课时数=min(课时),平均课时数=avg(课时) from 任课表
go
execute [统计课时]
6.
create procedure [统计课时]
@教师名 nchar(16),
as
begin
declare @总课时 int
select @总课时=sum (课时) from 任课表视图
where 姓名 = @教师名
end
go
execute [统计课时] '郭老师'
7.
select 编号, 姓名 from 教师表
where编号 in (select distinct 教师编号 from 任课表 where课时数>=90)
8.
create rule zhicheng _rule
as @zhicheng in ('教授','副教授','讲师', '助教')
go
sp_bindrule zhicheng_rule, '教师表.职称'
第8页(共5页)
展开阅读全文