《SQL数据库管理与开发教程与实训》试题(H卷)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《SQL 数据库管理与开发教程与实训》试题 (H 卷)
郭翠英 老师
A. 包括 40 岁和 50 岁
B. 不包括 40 岁和 50 岁
C. 包括 40 岁但不包括 50 岁
D. 包括 50 岁但不包括 40 岁 7. 模式查找 like '_a%', 下面哪个结果是可能的
A.aili
B. bai
C.bba
a
8. 在 MS SQL Server 中,用来显示数据库信息的系统存储过程是 (

A. sp_dbhelp
B. sp_db
C. sp_help
D. sp_helpdb
9. SQL 语言中,删除记录的命令是 ( ) 。

A. DELETE
B. DROP
C. CLEAR
D. REMOVE
10. SQL 的视图是从(
)中导出
的。

D. 数据库
A .基本表 B. 视图
C. 基本表或视图
二、判断题 (每空 1 分 ,共 10分)
1. "xingming" 是SQL 中的字符串常量吗?
2. "11.9"是SQL 中的实型常量吗?
3. 语句 select 22%4, 的执行结果是 : 0 吗?
4. "200
5.11.09"是SQL 中的日期型常量吗? 5. ¥ 2005.89是SQL 中的货币型常量吗?
6. 语句 select 15/2 的执行结果是 :
7.5 吗? 7. 'AB'>'CD' 比较运算的结果为真吗?
8. bigi nt 是SQL 的数据类型吗?
9.
设置惟一约束的列可以为空吗?
10. 一个表可以创建多个主键吗? 三、填空题 ( 每空 1 分,共 20 分) 1. 关系数据库关系运算 ____________ 、 ________ 和 _________ 。

2. SQL Server 2000局部变量名字必须以 _________ 开头,而全局变量名字必须以 ____________ 开头。

聞創沟燴鐺險爱氇谴净。

3.
语句 select ascii ('D') 的执行结果是: _______ 。

A . master
B . model
C . pub
D. msdb
3. 下列哪个不是数据库对象(
)。

A .数据模型 B.视图
C.表
D.用户 4.
下列哪个不是 sql 数据库文件的后缀。

A ..mdf
B . .ldf
C ..tif
D ..ndf
5. 在SQL 中,建立表用的命令是 ()。

A.CREATE TABLE
B.CREATE RULE
C.CREATE VIEW
D.CREATE INDEX
、单项选择题 ( 每小题 1 分,共 10 分) 1.下列四项中,不属于 SQL2000实用程序的是(
)。

A .企业管理器 B.查询分析器 C.服务管理器
D.媒体播放器
2. SQL Server 安装程序创建 4 个系统数据库,
列哪个不是(
6. SQL 语言中,条件 “年龄 BETWEEN 40 AND 50”表示年龄在 矚慫润厲钐瘗睞枥庑赖。

)。

40 至 50 之间,且 ( ) 。

4. 语句 select upper ('beautiful') ,ltrim (' 我心中的太阳 ') 的执行结果是: 和 。

残骛楼諍锩瀨
濟溆塹籟。

5. 表或视图的操作权限有 ____________ 、 __________ 、 ____________ 、_
酽锕极額閉镇桧猪訣锥。

6. 选择运算是根据某些条件对关系做 _______ 分割;投影是根据某些条件对关系做 _________ 分
割。

7. SQL Server 代理主要由 _______ 、 ______ 和警报来组成。

8. 数据完整性的类型有 __________ 完整性、 _______ 完整性、 ________ 完整性和 ________
完整性。

彈贸摄尔霁毙攬砖卤庑。

四、简述题 (每小题 5 分,共 10分)
1. 有学生成绩表,要保证每个学生的每门课程惟一标识的话考虑使用数据完整性方法。

2. 简述数据完整性的类型以及如何确定使用哪个强制方法。

五、设计题 ( 共 50 分 ) 现有关系数据库如下:
数据库名:教师数据库
教师表 ( 编号 char (6) ,姓名,性别,民族,职称,身份证号 ) 课程表 ( 课号 char (6) ,名称 )
任课表 (ID ,教师编号 , 课号,课时数 )
用SQL 语言实现下列功能的 sql 语句代码: 1. 创建上述三表的建库、建表代码
(14 分) ;
要求使用: 主键(教师表 .编号,课程表 .课号) 、外键(任课表.教师编号,任课表 .课号)、 默认(民族) 、非空(民族,姓名) 、唯一(身份证号 ) 、检查(性别、课时数), 自动编号 (ID ) 謀荞抟箧飆鐸怼类蒋薔。

2. 将下列课程信息添加到课程表的代码 (6 分)
课号
课程名称
100001 SQL Server 数据库 100002
数据结构
100003 VB 程序设计
修改 课号为 100003 的课程名称: VisualBasic 程序设计 删除 课号为 100003 的课程信息
3. 写出创建 [任课表视图 ]( 教师编号,姓名,课号,课程名称,课时数 ) 的代码; (4 分 )
4. 写出创建 [某门课任课教师 ]内嵌表值函数以及检索的代码; (6 分)
检索:所有代 'SQL Server 数据库 ' 这门课程的老师姓名;
5. 写出创建 [统计课时数 ] :输出最大课时数、 最低课时数、 平均课时的存储过程以及执行 代
码; (6 分 )
6. 写出创建:计算某教师代课总课时,并将值返回的存储过程以及执行代码。

(6 分)
执行:计算 “郭老师 ”的总课时。

(6 分)
7. 检索有一门或一门以上课程课时数大于 90的所有教师的信息, 包括编号、姓名。

(4 分) 8.
建一个规则,并将其绑定到教师表的职称列上,规定取值为(
'教授','副教授 ','讲师', '助教 ')之一。

(4 分 )厦礴恳蹒骈時盡继價骚。

《SQL 数据库管理与开发教程与实训》试题
一、 1.D 2.C 3.A 4.C 5.A 6.A 7.B 8.D 9.A 10.C 二、 1. N 2.N 3.N 4.N 5.N 6.N 7. N 8.Y 9.Y 10.N 三、 1. 选择、投影、连接
和 dri 。

(H 卷)参考答案
茕桢广鳓鯡选块网羈泪 鹅娅尽損鹌惨歷茏鴛賴。

insert
insert insert update
硯錦。

delete
课程表 课程表 课程表 课程表 values('100001', 'SQL Server
values('100002', '
values('100003', 'VB 名称
='VisualBasic 课程表 where 课号 ='100003'
数据库 ') 数据结构 ') 程序设计 ') 程序设计 ' where 课号 ='100003' 渗釤呛俨匀谔鱉调 2. @、 @@ 3. 68
4. BEAUTIFAL 、我心中的太阳
5. select 、 insert 、 update 、 delete
6. 水平、垂直
7. 作业、操作员
8. 实体、域、参照、用户自定义 四、简述题
1. 将每个学生的学号和课程号定义为复合主键这样才能保证每个学生的每门课程惟一。

2. 要点:
(1) 域完整性:使用DEFAULT (默认值)、DEFAUL T 默认技术)、CHEC K 检查)、RULE (规 则技术)的方法指定某列可接受值的范围或模式 籟丛妈羥为贍偾蛏练淨。

(2) 实体完整性:使用 PRIMARYCEY (主键)、UNIQUE (惟一键)、IDENTITY (标识列)来 确保行的惟一性 預頌圣鉉儐歲龈讶骅籴。

(3) 参照完整性:使用 FOREIGN KEY (外键)保证列与参照列的一致性 五、设计题 1.
create database [ use [ 教师数据库 ] go
教师数据库 ] 2 分)
create table 教师表 ([ 编
号 ] char(6) primary key, [ 姓名 ] nchar(4) not null, [ 性别 ] nchar(1) check([ [ 民族 ] nchar(8) default ' [ 职称 ] nchar(12), [ 身份证号 ] char(18) unique )
性别] in (' 男', ' 汉族 ' not null,
女')),
6 分)
课程表 ([ 课号 ] char(6) primary key, [ 名称 ] char(40) not null )
create table 2 分)
任课表 (ID IDENTITY(1, 1), [ 教师编号 ] char(6) references [ 课号 ] char(6) references [ 课时数 ] integer
check([ create table 4 分)
学生表 ( 学号 ), 课程表 ( 课号 ), 课时数 ]
between 0 and 200)
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, 教师表. 职称'。

相关文档
最新文档