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 primary
(filename='d:\\stu.mdf', name=studata, size=3mb,
maxsize=unlimited, filegrowth=3% )
log on
(filename='d:\\stu.ldf', name=stulog, size=1mb, maxsize=3mb )
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 课程信息表(课号), 分数int 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 procedure 某门课程高低均分 @课程名nvarchar(30) as
select max(分数) as 最高分,min(分数) as 最低分,avg(分数) as 平均分from 课程信息表,成绩信息表
where 课程信息表.课号=成绩信息表.课号and 名称=@课程名 执行过程:
exec 某门课程高低均分 @课程名='专业英语'
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库SQL SERVER查询练习习题(2)在线全文阅读。
相关推荐: