第一章 单元测试
1、单选题:
下面关于主键的说法错误的是()。
选项:
A:主键值不允许重复
B:每个关系只能有一个主键
C:主键值不能为空
D:主键只能包含一个字段
答案: 【主键只能包含一个字段】
2、单选题:
有如下雇员表和部门表两个关系,( )字段是外键。
选项:
A:雇员表中的部门号
B:部门表中的部门号
C:部门表中的部门名
D:雇员表中的雇员号
答案: 【雇员表中的部门号
】
3、多选题:
下面有关关系性质的描述正确的是( )。
选项:
A:记录的顺序可以随意
B:字段的顺序可以随意
C:在同一个关系中可以有来自同一个域的字段
D:在同一个关系中可以有重名的字段
答案: 【记录的顺序可以随意;字段的顺序可以随意;在同一个关系中可以有来自同一个域的字段】
4、单选题:
设置学生表中年龄字段的取值范围在15-30,该约束属于( )约束。
选项:
A:其他选项都不是
B:实体完整性
C:参照完整性
D:用户自定义完整性
答案: 【用户自定义完整性
】
5、判断题:
在关系数据模型中,关系中的一行称为字段。
选项:
A:错
B:对
答案: 【错】
6、判断题:
在关系数据模型中,关系中的一列称为记录。
选项:
A:对
B:错
答案: 【错】
7、判断题:
主键要求值唯一表示了客观世界中两个实体是可区分的。
选项:
A:对
B:错
答案: 【对】
8、判断题:
主键值不能为空表示了客观世界中实体的存在。
选项:
A:对
B:错
答案: 【对】
9、单选题:
关系数据模型的数据结构是( )。
选项:
A:字段
B:域
C:关系
D:记录
答案: 【关系
】
10、判断题:
对于多字段组合为主键的情况,主键不能为空是指主键中的部分字段可以取空值但整体不能取空值。
选项:
A:对
B:错
答案: 【错】
11、判断题:
参照完整性约束要求关系的外键取值等于它所参照的关系中的主键值但不能为空值。
选项:
A:对
B:错
答案: 【错】
12、多选题:
有如下两个关系,(1)表的(2)字段是外键。
选项:
A:(2)处填:部门号
B:(1)处填:EMP
C:(1)处填:DEMP
D:(2)处填:雇员号
答案: 【(2)处填:部门号;(1)处填:EMP
】
13、多选题:
关系数据模型的三要素是( )。
选项:
A:数据结构
B:数据操作
C:数据完整性约束
D:数据内容
答案: 【数据结构;数据操作;数据完整性约束】
第二章 单元测试
1、单选题:
SQL Server 2008是( )公司推出的数据库管理系统。
选项:
A:Microsoft
B:Ashton-Tate
C:IBM
D:Sybase
答案: 【Microsoft】
2、单选题:
在SQL Server2008的版本中,( )是功能最强最全的版本。
选项:
A:开发版
B:企业版
C:工作组版
D:标准版
答案: 【企业版】
3、判断题:
在客户端可以注册多个服务器。
选项:
A:对
B:错
答案: 【对】
4、单选题:
创建服务器组需要在( )视窗中进行。
选项:
A:已注册服务器
B:对象资源管理器
C:书签窗口
D:属性窗口
答案: 【已注册服务器
】
5、单选题:
SQL Server 2008 采用的身份验证模式是( )。
选项:
A:仅SQL Server身份验证模式
B:仅混合模式
C:仅Windows身份验证模式
D:Windows身份验证模式和混合模式
答案: 【Windows身份验证模式和混合模式】
6、判断题:
一个注册服务器可以添加到多个服务器组中。
选项:
A:对
B:错
答案: 【错】
7、单选题:
如果要创建数据库,应使用SQL Server提供的( )工具。
选项:
A:SQL Server Management Studio
B:Reporting Services
C:Analysis Services
D:Integration Services
答案: 【SQL Server Management Studio】
8、多选题:
SQL Server提供的服务有( )。
选项:
A:分析服务
B:报表服务
C:数据库引擎
D:集成服务
答案: 【分析服务
;报表服务
;数据库引擎
;集成服务
】
9、单选题:
SQL Server是一个( )的数据库管理系统。
选项:
A:网状型
B:关系型
C:都不是
D:层次型
答案: 【关系型】
10、判断题:
使用Windows身份验证模式登录SQL Server服务器时不需要输入登录名和密码。
选项:
A:错
B:对
答案: 【对】
第三章 单元测试
1、单选题:
在数据库文件中,主数据文件的扩展名是( )。
选项:
A:NDF
B:LDF
C:MDF
D:CDF
答案:
2、单选题:
在数据库文件中,日志文件的扩展名是( )。
选项:
A:NDF
B:CDF
C:MDF
D:LDF
答案:
3、单选题:
有关数据库文件组的说法错误的是( )。
选项:
A:主数据文件必须放在主文件组
B:主文件组的名字是Primary
C:日志文件必须放在主文件组
D:用户创建的文件组可以设为默认文件组
答案:
4、单选题:
在一个数据库中,用来存储数据和数据库的初始化信息的文件是( ),它还包含其它数据库文件的指针,是数据库的起点。
选项:
A:主数据库文件
B:都不是
C:日志文件
D:次数据文件
答案:
5、单选题:
在数据库文件中,记录数据库事务操作信息的文件是( ),其作用是用于数据库的恢复。
选项:
A:主数据文件
B:日志文件
C:次数据库文件
D:都不是
答案:
6、单选题:
以下不属于数据库对象的是( )。
选项:
A:查询
B:数据库关系图
C:视图
D:函数
答案:
7、判断题:
数据库用户是一种数据库对象。
选项:
A:错
B:对
答案:
8、多选题:
以下( )是系统数据库。
选项:
A:Model
B:Tempdb
C:Msdb
D:Master
答案:
9、单选题:
记录了SQL Server实例所有系统级信息的数据库是( )。
选项:
A:Tempdb
B:Msdb
C:Model
D:Master
答案:
10、单选题:
用户在创建数据库时,发现可以设置的初始大小最小为5MB,最有可能的原因是( )。
选项:
A:tempdb数据库的大小是5MB
B:msdb数据库的大小是5MB
C:
master数据库的大小是5MB
D:model数据库的大小是5MB
答案:
11、单选题:
下面关于SQL Server数据库文件的描述正确的是( )。
选项:
A:只允许有一个次数据文件
B:每个数据库中可以有多个主数据文件
C:一个数据库至少由一个主数据文件和一个日志文件组成
D:一个数据库有主数据文件即可
答案:
12、单选题:
下列( )数据库是SQL Serverd系统数据库。
选项:
A:Pubs
B:Model
C:Northwind
D:Adventureworks
答案:
13、单选题:
如果要将一个数据库的若干表复制到另一个数据库中,可以使用( )操作完成。
选项:
A:分离与附加
B:导入和导出
C:脱机与联机
D:备份与恢复
答案:
14、单选题:
运行下列数据库创建命令后,当日志文件第二次填满后会自动增长( )MB。
CREATE DATABASE 学院人事管理
ON
(NAME=FM,
FILENAME=’d:dataFM.mdf’,
SIZE=5MB,
MAXSIZE=20MB,
FILEGROWTH=2MB)
LOG ON
(NAME=FL,
FILENAME=’d:dataFL.ldf’,
SIZE=2MB,
选项:
A:1.5
B:1
C:4
D:2
答案:
15、单选题:
有如下数据库的创建语句,其中主数据文件的初始大小是( )MB。
CREATE DATABASE 学院人事管理
ON
(NAME=FM,
FILENAME=’d:dataFM.mdf’,
SIZE=5MB,
MAXSIZE=20MB,
FILEGROWTH=20%)
LOG ON
(NAME=FL,
FILENAME=’d:dataFL.ldf’,
SIZE=2MB,
选项:
A:2
B:16
C:5
D:20
答案:
第四章 单元测试
1、单选题:
( )数据类型只能存储0-255之间的整数,占用1 个字节。
选项:
A:smallint
B:bit
C:tinyint
D:char
答案:
2、单选题:
下面( )数据类型属于字符型。
选项:
A:string
B:varchar
C:decimal
D:int
答案:
3、单选题:
如果要在表设计器中设置某个字段为外键,右击鼠标后,在快捷菜单中应选择( )。
选项:
A:CHECK约束
B:关系
C:索引/键
D:设置主键
答案:
4、单选题:
如果要在表设计器中设置某个字段为主键,选中该字段后右击鼠标,在快捷菜单中应选择( )。
选项:
A:关系
B:设置主键
C:索引/键
D:CHECK约束
答案:
5、判断题:
如果要在表设计器中设置某两个字段的组合为主键,可以先设置一个字段为主键,然后再设置另一个字段为主键。
选项:
A:错
B:对
答案:
6、判断题:
外键跟它所参照的主键数据类型必须一致,字段名可以相同也可以不同。
选项:
A:错
B:对
答案:
7、单选题:
设有一个商品表,要求其中进价字段的值小于售价字段的值,则该约束属于( )约束。
选项:
A:CHECK约束
B:唯一约束
C:外键约束
D:主键约束
答案:
8、判断题:
外键约束的名字默认为FK_开头,但是可以修改。
选项:
A:错
B:对
答案:
9、单选题:
使用create table语句在创建表的时候创建外键约束,应使用( )短语。
选项:
A:default
B:check
C:foreign key
D:primary key
答案:
10、单选题:
使用create table语句在创建表的时候创建默认值约束,应使用( )短语。
选项:
A:primary key
B:default
C:check
D:foreign key
答案:
11、判断题:
在同一个字段上可以设置多个约束。
选项:
A:错
B:对
答案:
12、判断题:
当用insert语句向表的所有字段插入值时,字段名可以省略。
选项:
A:错
B:对
答案:
13、多选题:
在向表中添加记录时,下面说法正确的是( )。
选项:
A:可以随意添加
B:添加的数据应符合定义的类型和长度要求
C:添加的数据应符合定义的约束要求
D:如果表之间存在关联,应先添加被参照关系的记录,然后再添加参照关系的记录
答案:
14、单选题:
update语句中的( )子句用来将表达式的值赋给字段从而覆盖其原来的值。
选项:
A:where
B:give
C:set
D:values
答案:
15、判断题:
当某个表中要修改的字段被其他表中的字段通过外键约束引用时,则不能直接修改该字段。
选项:
A:错
B:对
答案:
16、判断题:
使用update语句一次可更新多个表中的数据。
选项:
A:错
B:对
答案:
17、判断题:
使用delete语句一次只能删除一个表中的记录。
选项:
A:错
B:对
答案:
18、多选题:
现有图书表的关系模式如下:图书表(书号,书名,出版社,作者姓名,单价)下面语句的作用是将清华大学出版社的图书单价打8折,请将该语句补充完整。update 图书表
set (1) where (2)
选项:
A:(1)处填:单价=单价*80%
B:(2)处填:出版社 like ‘清华大学出版社’
C:(2)处填:出版社=’清华大学出版社’
D:(1)处填:单价=单价*0.8
答案:
19、多选题:
使用下列create talbe语句创建student表:
create talbe student no char(5) primary key, same char(20) not null, ssex char(2) default(‘男’) not null, sage int, sdept char(15) default(‘计算机’) )然后使用下列insert语句向该表中插入数据:insert into student(sno,sname) values(‘0002′,’李明’)则插入的这条记录的sname字段的值是(1),ssex字段的值是(2),sage的值是(3),sdept字段的值是(4)。
选项:
A:(4)处填:null
B:(2)处填:男
C:(1)处填:李明
D:(3)处填:null
答案:
20、单选题:
使用下列create talbe语句创建student表:
create talbe student no char(5) primary key, same char(20) not null, ssex char(2) default(‘男’) not null, sage int, sdept char(15) default(‘计算机’) )然后使用下列insert语句向该表中插入数据:insert into student values(‘0001′,’王明’,default,16,default)则插入的这条记录的ssex字段的值是( )。
选项:
A:null
B:default
C:女
D:男
答案:
第五章 单元测试
1、单选题:
下列涉及空值的表达式,不正确的是( )。
选项:
A:NOT (AGE IS NULL)
B:AGE IS NULL
C:AGE IS NOT NULL
D:AGE = NULL
答案:
2、单选题:
有如下2个关系R和S,下列语句的执行结果包含( )条记录。select R.A, B, C, D from R full join S on(R.A=S.A)
选项:
A:4
B:3
C:2
D:5
答案:
3、单选题:
有如下2个关系R和S,下列语句的执行结果包含( )条记录。select R.A, B, C, D from R left join S on(R.A=S.A)
选项:
A:4
B:3
C:5
D:2
答案:
4、判断题:
select语句可以写在一行,也可以分多行写,行与行之间不需要加任何符号分隔。
选项:
A:错
B:对
答案:
5、判断题:
select语句中的where子句和having子句都是条件子句,where子句是对记录进行筛选,而having子句则是对组进行筛选。
选项:
A:错
B:对
答案:
6、判断题:
一个select语句中可以有having子句而没有group by子句,也可以有group by子句而没有having子句。
选项:
A:对
B:错
答案:
7、多选题:
下面关于select语句,说法正确的是( )。
选项:
A:select子句可以有多个输出列
B:order by子句可以有多个排序表达式
C:from子句可以有多个查询来源表
D:group by子句可以有多个分组表达式
答案:
8、单选题:
select语句中的from子句的作用是( )。
选项:
A:指定对记录进行筛选的条件
B:指定对组进行筛选的条件
C:指定查询的输出结果
D:指定查询的数据来源
答案:
9、多选题:
现有数据库ordermanagement,包含三个表,其结构如下,其中加下划线的字段或字段组合为主键。客户表(客户号,客户名,地址,电话)订单表(订单号,客户号,订购日期)订单明细表(订单号,器件号,器件名,单价,数量)要求查询订单表的订单号和订购日期,并将订单号列的列名改为订单编号,语句正确的是( )。
选项:
A:select 订单号 as 订单编号,订购日期 from 订单表
B:select 订单编号 as ‘订单编号’,订购日期 from 订单表
C:select 订单号 ‘订单编号’,订购日期 from 订单表
D:select 订单号 订单编号,订购日期 from 订单表
答案:
10、多选题:
现有学生管理数据库,包含三个表,其结构如下,其中加下划线的字段或字段组合为主键。学生表(学号,姓名,性别,出生日期,专业班级)课程表(课程号,课程名,学分,教师号)选课表(学号,课程号,成绩)下面语句的功能是:查询各门课的最高分,最低分和平均分。请将该语句补充完整。select 课程号,(1)as 最高分,(2) as 最低分,(3)as 平均分
from 选课表
group by (4)
选项:
A:(2)处填:min(成绩)
B:(4)处填:课程号
C:(3)处填:avg(成绩)
D:(1)处填:max(成绩)
答案:
11、多选题:
现有学生管理数据库,包含三个表,其结构如下,其中加下划线的字段或字段组合为主键。学生表(学号,姓名,性别,出生日期,班级)课程表(课程号,课程名,学分,教师号)选课表(学号,课程号,成绩)下面语句的功能是:查询学生的姓名、所选课的课程名和成绩。请将该语句补充完整。select 姓名, 课程名, 成绩
from (1)
where (2)
选项:
A:(2)处填:学生表.学号=选课表.学号 and 课程表.课程号=选课表.课程号
B:(2)处填:学生表.学号=选课表.学号
C:(1)处填:学生表, 课程表, 选课表
D:(1)处填:学生表, 课程表
答案:
12、多选题:
现有学生管理数据库,包含三个表,其结构如下,其中加下划线的字段或字段组合为主键。学生表(学号,姓名,性别,出生日期,专业班级)课程表(课程号,课程名,学分,教师号)选课表(学号,课程号,成绩)下面语句的功能是:查询选课表中各门课的选课人数。请将该语句补充完整。select 课程号,(1)as 选课人数
from 选课表
group by (2)
选项:
A:(2)处填:课程号
B:(1)处填:count(学号)
C:(2)处填:学号
D:(1)处填:count(*)
答案:
13、多选题:
现有数据库ordermanagement,包含三个表,其结构如下,其中加下划线的字段或字段组合为主键。客户表(客户号,客户名,地址,电话)订单表(订单号,客户号,订购日期)订单明细表(订单号,器件号,器件名,单价,数量)下面语句的功能是:查询客户名为“明日科技”的订购明细,查询结果先按订单号升序排,同一订单的再按单价降序排。请将该语句补充完整。select 订单表.订单号,器件号,器件名,单价,数量
from (1)
where 客户表.客户号=订单表.客户号 and 订单表.订单号=订单明细表.订单号 and (2) order by (3),(4)
选项:
A:(4)处填:单价
B:(1)处填:客户表, 订单表, 订单明细表
C:(3)处填:订单号
D:(2)处填:客户名=’明日科技’
答案:
14、多选题:
现有数据库ordermanagement,包含三个表,其结构如下,其中加下划线的字段或字段组合为主键。客户表(客户号,客户名,地址,电话)订单表(订单号,客户号,订购日期)订单明细表(订单号,器件号,器件名,单价,数量)下面语句的功能是:查询每个客户的订单数量。请将该语句补充完整。select 客户号,(1)as 订单数量
from 订单表
group by (2)
选项:
A:(2)处填:客户号
B:(2)处填:订单号
C:(1)处填:count(*)
D:(1)处填:count(订单号)
答案:
15、单选题:
假如有两个表的连接如下: table_1 LEFT JOIN table_2 ON( table_1.A=table_2.A)
其中A是table_1和table_2的公共字段,这种连接会生成( )结果集。
选项:
A:包括这两个表的所有行
B:包括table_1中的所有行,不包括table_2的不满足条件的行
C:包括table_2中的所有行,不包括table_1的不满足条件的行
D:只包括table_1和table_2满足条件的行
答案:
16、多选题:
设某单位图书借阅库中有下面三个表,其结构如下,其中加下划线的字段或字段组合是主键。图书表(书号,书名,出版社,作者姓名,单价,总册数,未借册数) 读者表(借书卡号,姓名,部门名,电话)借阅表(借书卡号,书号,借书日期,应还日期)下面语句的功能是:查询借阅人数超过10人的图书书号。请将该语句补充完整。select (1)
from (2) group by(3) having (4)
选项:
A:(3)处填:借书卡号
B:(1)处填:书号
C:(2)处填:借阅表
D:(4)处填:count(*)>10
答案:
17、多选题:
现有数据库ordermanagement,包含三个表,其结构如下,其中加下划线的字段或字段组合为主键。客户表(客户号,客户名,地址,电话)订单表(订单号,客户号,订购日期)订单明细表(订单号,器件号,器件名,单价,数量)下面语句的功能是:查询所有客户的订单号和订购日期。请将该语句补充完整。select (1)
from(2)left join(3)on(4)
选项:
A:(1)处填:订单号,订购日期
B:(3)处填:客户表
C:(2)处填:订单表
D:(4)处填:客户表.客户号=订单表.客户号
答案:
18、单选题:
一个select语句可以嵌套在另一个select语句的( )子句中。
选项:
A:group by
B:where
C:having
D:from
答案:
19、判断题:
子查询可以返回一个或一组数据也可以测试数据行是否存在。
选项:
A:对
B:错
答案:
20、多选题:
现有学生管理数据库,包含三个表,其结构如下,其中加下划线的字段或字段组合为主键。学生表(学号,姓名,性别,出生日期,专业班级)课程表(课程号,课程名,学分)成绩表(学号,课程号,成绩)下面语句的功能是:查询学生表中所有男生的姓名和出生日期。请将该语句补充完整。select (1) from 学生表 (2)
选项:
A:(2)处填:where 性别 like ‘男’
B:(1)处填:姓名, 出生日期
C:(2)处填:where 性别=’男’
D:(1)处填:姓名 出生日期
答案:
21、判断题:
无关子查询是指子查询的执行不依赖于外查询,即在子查询中不包含对外查询中表的任何引用。
选项:
A:错
B:对
答案:
22、多选题:
现有数据库ordermanagement,包含三个表,其结构如下,其中加下划线的字段或字段组合为主键。客户表(客户号,客户名,地址,电话)订单表(订单号,客户号,订购日期)订单明细表(订单号,器件号,器件名,单价,数量)下面语句的功能是:查询2018年的所有订单的订单号,客户号和订购日期。请将该语句补充完整。select 订单号,客户号,订购日期 from (1) where (2)
选项:
A:(1)处填:订单明细表
B:(2)处填:year(订购日期)=2018
C:(2)处填:year[订购日期]=2018
D:(1)处填:订单表
答案:
23、多选题:
设某单位图书借阅库中有下面三个表,其结构如下,其中加下划线的字段或字段组合是主键。图书表(书号,书名,出版社,作者姓名,单价,总册数,未借册数) 读者表(借书卡号,姓名,部门名,电话)借阅表(借书卡号,书号,借书日期,应还日期)下面语句的功能是查询书号为“978-7-302-31959-7”的图书的书名、单价和未借册数。请将该语句补充完整。select (1) from (2) where (3)
选项:
A:(3)处填:书号 like ‘978-7-302-31959-7′
B:(2)处填:图书表
C:(3)处填:书号=’978-7-302-31959-7′
D:(1)处填:书名,单价,未借册数
答案:
24、多选题:
现有学生管理数据库,包含三个表,其结构如下,其中加下划线的字段或字段组合为主键。学生表(学号,姓名,性别,出生日期,专业班级)课程表(课程号,课程名,学分,教师号)选课表(学号,课程号,成绩)下面语句的功能是:查询参加考试的人数。请将该语句补充完整。select (1) from 课程表 where (2)
选项:
A:(1)处填:count(学号)
B:(1)处填:count(distinct 学号)
C:(2)处填:成绩 is not null
D:(2)处填:成绩<> null
答案:
25、多选题:
现有数据库ordermanagement,包含三个表,其结构如下,其中加下划线的字段或字段组合为主键。客户表(客户号,客户名,地址,电话)订单表(订单号,客户号,订购日期)订单明细表(订单号,器件号,器件名,单价,数量)下面语句的功能是:查询客户表的所有数据。请将该语句补充完整。select (1) from (2)
选项:
A:(2)处填:客户表,订单表
B:(2)处填:客户表
C:(1)处填:*
D:(1)处填:客户号,客户名,地址,电话
答案:
26、单选题:
取消查询结果的重复行使用( )短语。
选项:
A:top
B:unique
C:distinct
D:only
答案:
27、多选题:
现有学生管理数据库,包含三个表,其结构如下,其中加下划线的字段或字段组合为主键。学生表(学号,姓名,性别,出生日期,专业班级)课程表(课程号,课程名,学分)成绩表(学号,课程号,成绩)下面语句的功能是:查询成绩表的所有数据,要求查询结果先按课程号升序排,课程号一样的再按成绩降序排。请将该语句补充完整。select * from 成绩表 order by (1),(2)
选项:
A:(2)处填:成绩
B:(1)处填:课程号
C:(1)处填:课程号 asc
D:(2)处填:成绩 desc
答案:
28、判断题:
相关子查询是指子查询依靠外查询获得值,因此在子查询中的WHERE子句中需要将子查询表的字段与外查询表的相关字段关联起来。
选项:
A:对
B:错
答案:
29、判断题:
使用相关子查询时,子查询只执行一次。
选项:
A:错
B:对
答案:
30、单选题:
要查询book表中所有书名中以“计算机”开头的书籍的单价,可用( )语句。
选项:
A:select 单价 from book where 书名=’计算机_’
B:select 单价 from book where 书名 like ‘计算机%’
C:select 单价 from book where 书名=’计算机%’
D:select 单价 from book where 书名 like ‘计算机_’
答案:
31、单选题:
在使用from子句进行两个表的连接时,如果想保留左表中的所有行和右表中满足连接条件的行应使用( )连接。
选项:
A:full join
B:right join
C:inner join
D:left join
答案:
32、单选题:
完全外连接的连接类型名称是( )。
选项:
A:whole join
B:cross join
C:full join
D:inner join
答案:
33、判断题:
在相关子查询中,外查询中有多少行子查询就执行多少次。
选项:
A:对
B:错
答案:
34、单选题:
有score表如下,写出下列程序运行的结果。
declare @ss intselect @ss= count(distinct sno) from scoreprint @ss
选项:
A:6
B:0
C:11
D:1
答案:
35、多选题:
现有学生管理数据库,包含三个表,其结构如下,其中加下划线的字段或字段组合为主键。学生表(学号,姓名,性别,出生日期,班级)课程表(课程号,课程名,学分,教师号)选课表(学号,课程号,成绩)下面语句的功能是:查询课程平均分小于80的课程号、课程名及任课教师号。请将该语句补充完整。select 课程号, 课程名, 教师号
from 课程表 where 课程号 in (select(1)from(2)group by(3)having(4))
选项:
A:(3)处填:课程号
B:(1)处填:课程号
C:(2)处填:选课表
D:(4)处填:avg(成绩)<80
答案:
36、多选题:
现有数据库ordermanagement,包含三个表,其结构如下,其中加下划线的字段或字段组合为主键。客户表(客户号,客户名,地址,电话)订单表(订单号,客户号,订购日期)订单明细表(订单号,器件号,器件名,单价,数量)下面语句的功能是:查询目前没有订单的客户信息。请将该语句补充完整。select *
from (1) where(2)not in (select distinct(3)from(4))
选项:
A:(1)处填:客户表
B:(4)处填:订单表
C:(2)处填:客户号
D:(3)处填:订单号
答案:
37、多选题:
设某单位图书借阅库中有下面三个表,其结构如下,其中加下划线的字段或字段组合是主键。图书表(书号,书名,出版社,作者姓名,单价,总册数,未借册数) 读者表(借书卡号,姓名,部门名,电话)借阅表(借书卡号,书号,借书日期,应还日期)下面语句的功能是:查询没有借书的读者的借书卡号、姓名和所在部门。请将该语句补充完整。
selelct 借书卡号,姓名,部门名
from 读者
where 借书卡号 (1) (select (2) from (3))
选项:
A:(3)处填:借阅表
B:(2)处填:借书卡号
C:(2)处填:distinct 借书卡号
D:(1)处填:not in
答案:
38、多选题:
现有数据库ordermanagement,包含三个表,其结构如下,其中加下划线的字段或字段组合为主键。客户表(客户号,客户名,地址,电话)订单表(订单号,客户号,订购日期)订单明细表(订单号,器件号,器件名,单价,数量)下面语句的功能是:查询每种器件中单价最低的订单明细。请将该语句补充完整。select * from (1) where (2)=(select (3)from 订单明细表 b where (4)=a.器件号)
选项:
A:(2)处填:单价
B:(1)处填:订单明细表 a
C:(4)处填:b.器件号
D:(3)处填:min(单价)
答案:
39、单选题:
表达式“score between 80 and 100”等同于( )。
选项:
A:score>=80 or score<=100
B:score>=80 and score<=100
C:score>80 or score<100
D:score>80 and score<100
答案:
第六章 单元测试
1、单选题:
下列属于货币型常量的是( )。
选项:
A:123
B:’123′
C:$123
D:”123″
答案:
2、单选题:
下列属于字符型常量的是( )。
选项:
A:1.2e3
B:$123
C:123
D:’123′
答案:
3、判断题:
如果字符串包含单引号字符,则可以使用两个单引号表示嵌入的这个单引号字符。
选项:
A:错
B:对
答案:
4、判断题:
selelct语句既可以输出变量的值也可以为变量赋值。
选项:
A:对
B:错
答案:
5、判断题:
set语句可以为变量赋值,但是不可以输出变量的值。
选项:
A:错
B:对
答案:
6、单选题:
以下( )是SQL Server中的注释语句。
选项:
A:*
B:–
C:-
D:**
答案:
7、多选题:
下面有关用户自定义函数的说法正确的是( )。
选项:
A:多语句表值函数的返回值是一个不可更新的表
B:内联表值函数的返回值为可更新的表
C:自定义函数的调用格式与系统函数的调用格式一样
D:标量值函数的返回值可有多个
答案:
8、判断题:
全局变量通常存储一些SQL Server的配置设定值和统计数据,用户可以在程序中用全局变量来测试系统的设定值或者是T-SQL命令执行后的状态值。
选项:
A:对
B:错
答案:
9、判断题:
全局变量不能被声明,但是可以被赋值。
选项:
A:错
B:对
答案:
10、单选题:
局部变量必须以( )开头。
选项:
A:#
B:##
C:@
D:@@
答案:
11、判断题:
局部变量仅在声明它的批处理、存储过程或者触发器中有效。
选项:
A:错
B:对
答案:
12、判断题:
5/2和5.0/2这两个表达式的值是一样的。
选项:
A:对
B:错
答案:
13、单选题:
表达式8&9的运算结果是( )。
选项:
A:9
B:0
C:8
D:1
答案:
14、单选题:
表达式8|9的运算结果是( )。
选项:
A:8
B:1
C:0
D:9
答案:
15、判断题:
当while语句的循环体包括多个语句时,这些语句可以使用begin…end语句括起来也可以不用begin…end语句括起来。
选项:
A:对
B:错
答案:
16、判断题:
CASE语句只能用于SQL语句的一部分,不能独立成句。
选项:
A:错
B:对
答案:
17、判断题:
下面语句的含义是等到计算机系统时间为1点10分时继续执行。WAITFOR TIME ‘1:10:00’
选项:
A:错
B:对
答案:
18、判断题:
标量值函数可以返回一个值,也可以返回多个值。
选项:
A:对
B:错
答案:
19、判断题:
内嵌表值函数的返回值是一个表,而且该表中的数据可以修改。
选项:
A:错
B:对
答案:
20、多选题:
内嵌表值函数可以在( )中调用。
选项:
A:在INSERT语句的表位置
B:在UPDATE语句的表位置
C:在DELETE语句的表位置
D:在SELECT语句的FROM子句
答案:
21、判断题:
游标是一种处理数据的方法,可以对查询结果集中的数据进行逐行处理。
选项:
A:错
B:对
答案:
22、单选题:
使用( )语句可以从游标中提取行数据。
选项:
A:get
B:fetch
C:open
D:declare
答案:
23、单选题:
已声明有一个滚动游标ct并打开,提取该游标结果集中当前行向前的第二行的语句是( )。
选项:
A:FETCH ABSOLUTE 2 FROM ct
B:FETCH ABSOLUTE -2 FROM ct
C:FETCH RELATIVE 2 FROM ct
D:FETCH RELATIVE -2 FROM ct
答案:
24、单选题:
定义了一个FORWARD_ONLY 类型的游标st,以下操作能正确执行的是( )
选项:
A:fetch last from st
B:fetch next from st
C:fetch first from st
D:fetch prior from st
答案:
25、单选题:
以下哪种情况,全局变量@@fetch_status 的取值为0。
选项:
A:fetch语句执行成功
B:fetch语句执行失败
C:被提取的行不存在
D:fetch语句语法错误
答案:
第七章 单元测试
1、判断题:
视图是一种数据库对象,视图并不存储数据,在视图中看到的数据实际是基本表中的数据。
选项:
A:对
B:错
答案:
2、判断题:
视图设计器与表设计器一样。
选项:
A:对
B:错
答案:
3、判断题:
如果视图中的某个列是计算列,则该列的值是不允许修改的。
选项:
A:对
B:错
答案:
4、判断题:
视图中的计算列必须要指定一个列名。
选项:
A:错
B:对
答案:
5、判断题:
如果在创建视图时指定了WITH CHECK OPTION选项,那么使用视图修改数据时,必须保证修改后的数据满足视图定义的范围。
选项:
A:对
B:错
答案:
6、判断题:
使用视图设计器创建了视图会自动生成该视图的定义语句。
选项:
A:对
B:错
答案:
7、判断题:
如果视图中显示的数据来自一个基本表的子集,那么这种视图称为行列子集视图。对行列子集视图可以进行插入、删除和更新操作。
选项:
A:错
B:对
答案:
8、判断题:
删除一个表(DROP TABLE)后,建立在该表上的视图就不能使用了。
选项:
A:错
B:对
答案:
9、多选题:
现有数据库ordermanagement,包含三个表,其结构如下,其中加下划线的字段或字段组合为主键。客户表(客户号,客户名,地址,电话)订单表(订单号,客户号,订购日期)订单明细表(订单号,器件号,器件名,单价,数量)下面语句的功能是:创建客户名为“三益贸易公司”的视图kv,包括该公司的订单号、订购日期、器件名、单价和数量。请将该语句补充完整。CREATE VIEW kvASSELECT 订单表.订单号,订购日期,器件名,单价,数量 FROM 客户表 INNER JOIN (1) INNER JOIN (2) ON 订单表.订单号 = 订单明细表.订单号 ON (3)
WHERE (4)
选项:
A:(4)处填:客户名 = ‘三益贸易公司’
B:(3)处填:客户表.客户号 = 订单表.客户号
C:(2)处填:订单明细表
D:(1)处填:订单表
答案:
10、单选题:
执行( )系统存储过程可以查看视图的定义。
选项:
A:sp_helptext
B:sp_view
C:sp_helpview
D:sp_help
答案:
第八章 单元测试
1、多选题:
有关聚集索引,下列说法正确的是( )。
选项:
A:聚集索引只能包含一个字段
B:对频繁更改数据的列不适合创建聚集索引
C:一个表只能有一个聚集索引
D:聚集索引的索引顺序与记录的物理顺序一致
答案:
2、判断题:
一个表可以创建多个聚集索引。
选项:
A:对
B:错
答案:
3、判断题:
对频繁更改的列适合创建聚集索引。
选项:
A:对
B:错
答案:
4、判断题:
一个聚集索引可以包含多个字段,但是一个表只能有一个聚集索引。
选项:
A:对
B:错
答案:
5、判断题:
聚集索引的检索效率比非聚集索引高。
选项:
A:对
B:错
答案:
6、判断题:
非聚集索引使用B树索引结构而聚集索引使用二叉树索引结构。
选项:
A:对
B:错
答案:
7、多选题:
现有数据库ordermanagement,包含三个表,其结构如下,其中加下划线的字段或字段组合为主键。客户表(客户号,客户名,地址,电话)订单表(订单号,客户号,订购日期)订单明细表(订单号,器件号,器件名,单价,数量)下面语句的功能是:在客户表上创建按客户名升序排的唯一非聚集索引idkh,并设置忽略重复值。请将该语句补充完整。CREATE (1) INDEX idkh ON 客户表(客户名) WITH (2)
选项:
A:(2)处填:IGNORE_DUP
B:(1)处填:UNIQUE NONCLUSTERED
C:(2)处填:IGNORE_DUP_KEY
D:(1)处填:UNIQUE
答案:
8、多选题:
现有学生管理数据库,包含三个表,其结构如下,其中加下划线的字段或字段组合为主键。学生表(学号,姓名,性别,出生日期,班级)课程表(课程号,课程名,学分)选课表(学号,课程号,成绩)下面语句的功能是:创建课程表上按课程名升序排的唯一聚集索引ind1。请将该语句补充完整。CREATE(1) INDEX ind1 ON (2)
选项:
A:(2)处填:课程表(课程名)
B:(2)处填:课程表(课程名 asc)
C:(1)处填:CLUSTERED
D:(1)处填:UNIQUE CLUSTERED
答案:
9、多选题:
现有学生管理数据库,包含三个表,其结构如下,其中加下划线的字段或字段组合为主键。学生表(学号,姓名,性别,出生日期,班级)课程表(课程号,课程名,学分)选课表(学号,课程号,成绩)下面语句的功能是:创建学生表上按姓名升序排的不唯一非聚集索引idxm,并设置填充因子为80。请将该语句补充完整。
CREATE INDEX idxm ON (1) WITH (2)
选项:
A:(2)处填:FILLFACTOR=80
B:(2)处填:FILL=80
C:(1)处填:学生表(姓名)
D:(1)处填:学生表(姓名 asc)
答案:
10、单选题:
下列关于建立索引的好处中说法错误的是( )。
选项:
A:可以加快数据录入的速度
B:可以加快GROUP BY的执行速度
C:可以加快表之间的连接速度
D:可以加快ORDER BY的执行速度
答案:
第九章 单元测试
1、判断题:
存储过程是一组完成特定功能的SQL语句集合,经编译后存储在数据库中,可以被多次调用。
选项:
A:错
B:对
答案:
2、判断题:
存储过程可以有参数也可以没有参数。
选项:
A:对
B:错
答案:
3、判断题:
after触发器是在激活触发器的语句执行完,相关事务提交后,才会被触发执行。
选项:
A:对
B:错
答案:
4、单选题:
update操作激活的触发器属于( )触发器。
选项:
A:都不是
B:DCL
C:DML
D:DDL
答案:
5、单选题:
激活DML触发器时,从触发器表中删除的行会自动存储到名为( )的临时表中。
选项:
A:deleted
B:insert
C:delete
D:inserted
答案:
6、单选题:
激活DML触发器时,触发器表中改后的行会自动复制到名为( )的临时表中。
选项:
A:inserted
B:deleted
C:updated
D:selected
答案:
7、多选题:
现有学生管理数据库,包含三个表,其结构如下,其中加下划线的字段或字段组合为主键。学生表(学号,姓名,性别,出生日期,班级)课程表(课程号,课程名,学分)选课表(学号,课程号,成绩)下面程序的功能是:创建一个存储过程pcd,用来计算指定课程号的课程的最高分、最低分和平均分,然后执行该存储过程求3-105号课的最高分、最低分和平均分。请将该程序补充完整。create(1)pcd(@cn char(6))asselect max(成绩) as 最高分, min(成绩) as 最低分, (2) as 平均分from 选课表where (3)goexec(4)
选项:
A:(1)处填:proc
B:(2)处填:avg(成绩)
C:(4)处填:pcd ‘3-105’
D:(3)处填:课程号=@cn
答案:
8、多选题:
设某单位图书借阅库中有下面三个表,其结构如下,其中加下划线的字段或字段组合是主键。图书表(书号,书名,出版社,作者姓名,单价,总册数,未借册数) 读者表(借书卡号,姓名,部门名,电话)借阅表(借书卡号,书号,借书日期,应还日期)下面语句的功能是:创建存储过程pbp,将指定书号的图书的单价改为指定的单价。请将该语句补充完整。
create(1)pbp(@sh char(20)),@dj money)as update(2)set(3)where(4)
选项:
A:(4)处填:书号=@sh
B:(1)处填:procedure
C:(3)处填:单价=@dj
D:(2)处填:图书表
答案:
9、多选题:
现有数据库ordermanagement,包含三个表,其结构如下,其中加下划线的字段或字段组合为主键。客户表(客户号,客户名,地址,电话)订单表(订单号,客户号,订购日期)订单明细表(订单号,器件号,器件名,单价,数量)下面语句的功能是:创建一个存储过程pkh,用于查询所有客户的信息,客户信息按地址升序排。请将该语句补充完整。CREATE (1)pkh ASSELECT (2)from (3)order by(4)
选项:
A:(3)处填:客户表
B:(1)处填:PROCEDURE
C:(2)处填:*
D:(4)处填:地址 desc
答案:
10、多选题:
现有数据库ordermanagement,包含三个表,其结构如下,其中加下划线的字段或字段组合为主键。客户表(客户号,客户名,地址,电话)订单表(订单号,客户号,订购日期)订单明细表(订单号,器件号,器件名,单价,数量)下面语句的功能是:创建一个存储过程pksm,查询指定客户号的订购总金额,其中订购总金额为输出参数,然后调用该存储过程求“C10001”号客户的订购总金额。请将该程序补充完整。CREATE PROCEDURE pksm(@kh char(6), @zje float output)asSELECT (1)
FROM (2) WHERE (3)
GODECLARE @je floatEXECUTE (4)
SELECT @je as ‘C10001号客户的订单总金额’
选项:
A:(3)处填:订单表.订单号=订单明细表.订单号 and 客户号=@kh
B:(1)处填:sum(单价*数量)
C:(2)处填:订单表,订单明细表
D:(4)处填:pksm ‘C10001’,@je
答案:
11、多选题:
设某单位图书借阅库中有下面三个表,其结构如下,其中加下划线的字段或字段组合是主键。图书表(书号,书名,出版社,作者姓名,单价,总册数,未借册数) 读者表(借书卡号,姓名,部门名,电话)借阅表(借书卡号,书号,借书日期,应还日期)下面语句的功能是:创建触发器tbk,限定每位读者最多只能借10本书。请将该语句补充完整。create trigger tbkon (1)after (2)asbegindeclare @bs intselect @bs=count(*) from 借阅表 where 借书卡号=(3)if @bs>10 begin print ‘借书册数不能超过10本!’ (4)
end
end
选项:
A:(1)处填:借阅表
B:(3)处填:SELECT 借书卡号 FROM inserted
C:(2)处填:delete
D:(4)处填:return
答案:
12、多选题:
设某单位图书借阅库中有下面三个表,其结构如下,其中加下划线的字段或字段组合是主键。图书表(书号,书名,出版社,作者姓名,单价,总册数,未借册数) 读者表(借书卡号,姓名,部门名,电话)借阅表(借书卡号,书号,借书日期,应还日期)下面语句的功能是:创建触发器tjs,使图书表中的未借册数随借书而改变,即当向借书表中添加一条记录表示某位读者借了一本书,图书表中该书的未借册数就减少1。请将该语句补充完整。
create trigger tjson(1)
after(2)
as update 图书表 set(3)where 书号=((4))
选项:
A:(4)处填:select 书号 from deleted
B:(2)处填:insert
C:(3)处填:未借册数=未借册数-1
D:(1)处填:借书表
答案:
13、多选题:
现有学生管理数据库,包含三个表,其结构如下,其中加下划线的字段或字段组合为主键。学生表(学号,姓名,性别,出生日期,班级)课程表(课程号,课程名,学分)选课表(学号,课程号,成绩)下面语句的功能是:创建after触发器txm,当向学生表中插入数据时,如果性别正确则插入,否则不允许插入并提示错误。请将该语句补充完整。create trigger txm
on 学生表after (1)asbegindeclare @xb char(2)select @sb=性别 from (2)if (3)begin print ‘性别错误!’ (4)
endend
选项:
A:(1)处填:insert
B:(3)处填:@xb<>’男’ or @xb<>’女’
C:(4)处填:return
D:(2)处填:inserted
答案:
14、多选题:
现有学生管理数据库,包含三个表,其结构如下,其中加下划线的字段或字段组合为主键。学生表(学号,姓名,性别,出生日期,班级)课程表(课程号,课程名,学分)选课表(学号,课程号,成绩)下面语句的功能是:创建AFTER触发器tgxh,当修改学生表中的学号后,该生在选课表中的学号也自动修改,从而实现级联修改。请将该语句补充完整。CREATE TRIGGER tgxh
ON (1)
FOR(2)
AS IF UPDATE(学号) BEGIN UPDATE 选课表 SET 学号=(3) WHERE 学号=(4) END
选项:
A:(1)处填:学生表
B:(2)处填:update
C:(4)处填:(SELECT 学号 FROM deleted)
D:(3)处填:(SELECT 学号 FROM inserted)
答案:
15、多选题:
可以激活DML触发器的语句是( )。
选项:
A:update
B:insert
C:delete
D:select
答案:
第十章 单元测试
1、多选题:
关于服务器角色和数据库角色的理解,正确的是( )。
选项:
A:数据库角色是数据库用户的集合
B:用户可以创建数据库角色
C:用户不能创建服务器角色
D:
服务器角色是登录账户的集合
答案:
2、单选题:
具有最高权限的服务器角色是( )。
选项:
A:Serveradmin
B:Securityadmin
C:Sysadmin
D:Setupadmin
答案:
3、单选题:
通过执行( )系统存储过程可向服务器角色中添加登录名。
选项:
A:sp_addsrvrolemember
B:sp_addmember
C:sp_addsrvrole
D:sp_addrolemember
答案:
4、判断题:
可通过执行系统存储过程sp_dropsrvrolemember删除一个登录名。
选项:
A:错
B:对
答案:
5、单选题:
在数据库中拥有全部权限的数据库角色是( )。
选项:
A:db_accessadmin
B:db_datawriter
C:db_owner
D:db_datareader
答案:
6、单选题:
使用( )语句可向数据库角色R1中添加数据库用户USER1。
选项:
A:EXECUTE sp_addrolemember ‘USER1′,’R1’
B:EXECUTE sp_addsrvrolemember ‘R1′,’USER1’
C:EXECUTE sp_addrolemember ‘R1′,’USER1’
D:EXECUTE sp_addsrvrolemember ‘USER1′,’R1’
答案:
7、单选题:
可使用( )语句将登录名Marylogin从服务器角色sysadmin中移除。
选项:
A:EXECUTE sp_droprolemember ‘Marylogin’, ‘sysadmin’
B:EXECUTE sp_dropsrvrolemember ‘sysadmin’,’Marylogin’
C:EXECUTE sp_droprolemember ‘sysadmin’,’Marylogin’
D:EXECUTE sp_dropsrvrolemember ‘Marylogin’, ‘sysadmin’
答案:
8、单选题:
( )语句可以授予数据库用户USER1对课程表的查询权并可以把该权限授予他人。
选项:
A:GRANT SELECT ON 课程表 TO USER1 WITH GRANT OPTION
B:GRANT SELECT ON USER1 TO 课程表
C:GRANT USER1 ON 课程表 TO SELECT
D:GRANT 课程表 ON SELECT TO USER1 WITH GRANT OPTION
答案:
9、多选题:
下面语句的功能是:拒绝数据库用户U4获得学生表的删除权。请将该语句补充完整。
DENY DELETE ON (1) TO (2)
选项:
A:(1)处填:学生表
B:(1)处填:U4
C:(2)处填:U4
D:(2)处填:学生表
答案:
10、单选题:
收回数据库用户U3对课程表的插入权应使用( )语句。
选项:
A:DENY INSERT ON U3 FROM 课程表
B:REVOKE INSERT ON 课程表 TO U3
C:DENY INSERT ON 课程表 FROM U3
D:REVOKE INSERT ON 课程表 FROM U3
答案:
请先
!