1. ( A )是位于用户与操作系统之间的一层数据管理软件,它属于系统软件,它为用户或应用程序提供访问数据库的方法。数据库在建立、使用和维护时由其统一管理、统一控制。
A.DBMS B.DB (database)
C.DBS D.DBA
2、查询表中的前3条记录使用的关键字是( D )
A、up 3 B、down 3 C、pre 3 D、top 3
3. SQL Server安装程序创建4个系统数据库,下列哪个不是( C )系统数据库。
A. Master B. Model C. pub D. msdb
4. 下列哪个不是sql 数据库文件的后缀(扩展名)。( C )
A..mdf B. .ldf C..tif D..ndf
5. SQL的视图是从( C )中导出的。
A. 基本表 B. 视图 C. 基本表或视图 D. 数据库
6. 在SQL语言中,建立存储过程的命令是( A )
A、CREATE PROCEDURE B、CREATE RULE C、CREATE DURE D、CREATE FILE
7. SQL语言中,删除表中数据的命令是sql2000数据库在哪个文件夹( A )。
A. DELETE B. DROP C. CLEAR D. REMOVE
8. 在MS SQL Server中,用来显示数据库信息的系统存储过程是( D )。
A. sp_dbhelp B. sp_db C. sp_help D. sp_helpdb
9. Microsoft 公司的SQL Server 2005 数据库管理系统一般只能运行在( A )。
A. Windows 平台 B. UNIX平台 C. LINX平台 D. NetWare 平台
10. SQL Server 2005 的物理存储主要包括3类文件(A )。
A. 主数据文件、次数据文件、事务日志文件
B. 主数据文件、次数据文件、文本文件
C. 表文件、索引文件、存储文件
D. 表文件、索引文件、图表文件
11. SQL Server 2000 系统中的所有系统级信息存储于哪个数据库( A )。
A. master B. model C. tempdb D.msdb
12、下列说法正确的是( B )。
A 、视图是观察数据的一种方法,只能基于基本表建立。
B 、视图是虚表,观察到的数据是实际基本表中的数据。
C 、索引查法一定比表扫描法查询速度快。
D 、索引的创建只和数据的存储有关系。
A 、视图是观察数据的一种方法,只能基于基本表建立。
B 、视图是虚表,观察到的数据是实际基本表中的数据。
C 、索引查法一定比表扫描法查询速度快。
D 、索引的创建只和数据的存储有关系。
13、SQL Server 2005是一个( C )的数据库系统。
(A)网状型 (B)层次型 (C)关系型 (D)以上都不是
14、在SQL Server 2005中,当数据表被修改时,系统自动执行的数据库对象是( B )。
(A)存储过程 (B)触发器 (C)视图 (D)其他数据库对象
15、要查询book表中所有书名中包含“计算机”的书籍情况,可用( B )语句。
(A) SELECT * FROM book WHERE book_name LIKE ‘计算机*’
(B) SELECT * FROM book WHERE book_name LIKE ‘计算机%’
(C) SELECT * FROM book WHERE book_name = ‘计算机*’
(D) SELECT * FROM book WHERE book_name = ‘计算机%’
16、关于主键描述正确的是:( C )
(A)包含一列 (B)包含两列 (C)包含一列或者多列 (D) 以上都不正确
17、在SQL SERVER中局部变量前面的字符为:( D )
(A)* (B)# (C)@@ (D) @
18、在WHILE循环语句中,如果循环体语句条数多于一条,必须使用:(A)
(A) BEGIN……END
(B) CASE……END
(C) IF…………THEN
(D) GOTO
19、SELECT查询中,要把结果中的行按照某一列的值进行排序,所用到的子句是:(A)
(A)ORDER BY (B)WHERE (C)GROUP BY (D)HAVING
20、对视图的描述错误的是:( C )
(A) 是一张虚拟的表
(B) 在存储视图时存储的是视图的定义
(C) 在存储视图时存储的是视图中的数据
(D) 可以像查询表一样来查询视图
五、设计题(共45分)
现有关系数据库如下:
数据库名:学生成绩数据库
学生信息表(学号 char(6),姓名,性别,民族,身份证号)
课程信息表(课号 char(6),名称)
成绩信息表(ID,学号,课号,分数)
Select 学号,姓名 from 学生信息表 where 学号 in (Select distinct 学号 from 成绩信息表 where 分数<60)
用SQL语言实现下列功能的sql语句代码。
1. 创建数据库[学生成绩数据库]代码(2分)。
create database 学生成绩数据库
on
(filename='d:\stu.mdf',
name=studata,
size=3,
maxsize=unlimited,
filegrowth=3%
)
log on
(filename='d:\stu.ldf',
name=stulog,
size=1,
maxsize=3
)2. 创建数据表[课程信息表]代码;(2分)
课程信息表(课号 char(6),名称)
create table 课程信息表
(课号char(6) primary key,
名称nvarchar(30) not null)
要求使用:主键(课号)、非空(名称)
3. 创建数据表[学生信息表]代码;(4分)
学生信息表(学号 char(6),姓名,性别,民族,身份证号)
要求使用:主键(学号)、默认(民族为汉)、非空(民族,姓名)、唯一(身份证号)、检查(性别是男或是女)
create table 学生信息表
( 学号char(6) primary key,
姓名nvarchar(30) not null,
性别char(2) check(性别='男' or 性别='女'),
民族nvarchar(10) not null default '汉',
身份证号char(18) unique
)
4. 创建数据表[成绩信息表];(5分)
成绩信息表(ID,学号,课号,分数)
要求使用:外键(学号,课号)、检查(分数必须是0-100之间)
create table 成绩信息表
( id int,
学号char(6) foreign key references 学生信息表(学号),
课号char(6) foreign key references 课程信息表(课号),
分数numeric(4,1) check(分数>=0 and 分数<=100)
)
5. 将下列课程信息添加到课程信息表的代码(8分)
课号 名称
100101 西班牙语
100102 大学英语
insert into 课程信息表values('100101','西班牙语')
insert into 课程信息表values('100102','大学英语')
修改 课号为100102的课程名称:专业英语
update 课程信息表set 名称='专业英语' where 课号='100102'
删除 课号为100101的课程信息
delete from 课程信息表where 课号='100101'
6. 创建视图[成绩信息表视图]的代码;(5分)
成绩信息表视图(学号,姓名,课号,课程名称,分数)
Create view 成绩信息表视图 as
select 学号,姓名,课号,课程名称,分数 from 学生信息表,课程信息表,成绩信息表
where 学生信息表.学号=成绩信息表.学号and 课程信息表.课号=成绩信息表.课号
7. 从学生信息表中查询姓刘的女同学的情况:姓名、性别、民族。(2分
select 姓名,性别,民族from 学生信息表where 姓名like '刘%' and 性别='女'
8. 查询有一门或一门以上课程成绩小于60分的所有学生的信息,包括学号、姓名。(4分)
select 学号,姓名from 学生信息表where 学号in (select distinct 学号from 成绩信息表where 分数<60)
9. 创建带参数的存储过程[某门课程高低均分]、执行该过程的代码(7分)
存储过程功能:查询某门课程的最高分、最低分、平均分;
执行该过程,查询所有修’专业英语’这门学生的最高分、最低分、平均分;
create proc 某门课程高低均分
@课程名nvarchar(30) as
select max(分数) as 最高分,min(分数) as 最低分,avg(分数) as 平均分from 课程信息表,成绩信息表where 课程信息表.课号=成绩信息表.课号and 名称=@课程名
执行过程:
exec 某门课程高低均分 @课程名='专业英语'
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论