《数据库安全技术》第二章测验题
一、单项选择题
1.访问SQL Server实例的登录有两种验证模式:Windows身份验证和______身份验证。
A Windows NT
B SQL Server
C 混合模式
D 以上都不对
答案:C
2. 关于登录账户和用户,下列叙述不正确的是______。
A 登录帐户是在服务器级创建的,用户是在数据库级创建的
B 创建用户时必须存在一个用户的登录帐户
C 用户和登录帐户必须同名
D 一个登录帐户可以对应多个用户
答案:C
3.在SSMS中,________窗口用于显示数据库服务器中的所有数据库对象。
A.对象资源管理器 B.查询编辑器
C.模版资源管理器 D.解决方案资源管理器
答案:A
4.下列关于SQL语言的叙述中,是不正确的。
A.SQL语言支持数据的三级模式结构
B.一个基本表只能存储在一个存储文件中
C.一个SQL表可以是一个基本表或者一个视图
D.存储文件的逻辑结构组成了关系数据库的内模式
答案:B
5.用如下的SQL语句创建一个Student表:
CREATE TABLE Student (SNO char(4) NOT NULL
NAME char(8) NOT NULL
SEX char(2)
AGE int)
可以插入到Student表中的元组是________。
A.(‘0731’,‘张三’,‘男’,23) B.(‘0731’,‘张三’, 23, 男)
C.(NULL ,‘张三’, ‘男’,23) D.(‘0731’,NULL,‘男’,23)答案:A
6. 下列______不是关系数据库语言的共同特点。
A.能够嵌入到高级语言使用 B.语言具有完备的表达能力
C.是面向集合的语言 D.是过程化的语言
答案:D
7. SQL语言集数据定义、数据查询、数据操纵和数据控制功能于一体,语句UPDATE实现______功能。
批量更新sql语句A.数据定义 B.数据查询
C.数据操纵 D.数据控制
答案:C
下面第8至9题,基于“学生-选课-课程”数据库中如下三个关系:
S(S#,SNAME,SEX,AGE),SC(S#,C#,GRADE),C(C#,CNAME,TEACHER)8. 查学生号为“200301188”的学生的“数据库”课程的成绩,至少将使用
关系。
A. S和SC
B. SC和C
C. S和C
D. S、SC和C
答案:B
9. 查询选修了课程号为‘C2’的学生号和姓名,若用下列SQL的SELECT语句表达时,是错误的?
A. SELECT S.S#,SNAME FROM S
WHERE S.S# = (SELECT SC.S# FROM SC WHERE C# =‘C2’)
B. SELECT S.S#,SNAME FROM S,SC
WHERE S.S# = SC.S# AND C# =‘C2’
C. SELECT S.S#,SNAME FROM S,SC
WHERE S.S# = SC.S# AND C# =‘C2' ORDER BY S.S#
D. SELECT S.S#,SNAME FROM S
WHERE S.S# IN(SELECT SC.S# FROM SC WHERE C# =‘C2' )
答案:A
10. 查学生姓名及其所选修课程的课程号和成绩正确的SQL语句是。
A. SELECT SNAME FROM S, SELECT C#, GRADE FROM SC WHERE S.S#=SC.S#
B. SELECT SNAME, C#, GRADE FROM S, C WHERE S.S# =
C.C#
C. SELECT SNAME, C#, GRADE FROM S,C,SC WHERE S.S#=SC.S# and SC.C#=C.C#
D. SELECT SNAME, C#, GRADE FROM S,SC WHERE S.S#=SC.S#
答案:D
11.下面不可以作为数据库名的是______。
A. @163
B. 9_
C.我的太阳
D. #$
答案:B
12.默认情况下,安装SQL Server2008后,系统就自动建立了______个数据库。
A. 2
B. 3
C. 4
D. 5
答案:D
13.安装SQL Server时,系统自动建立了几个数据库,其中有一个数据库记录了SQL Server系统的所有系统信息,这个数据库是______。
A. master数据库
B. model数据库
C. tempdb数据库
D. pubs数据库
答案:A
14.以下文件中可以作为文件组的成员的是______。
A. 索引文件
B. 日志文件
C. 数据文件
D. 程序文件
答案:C
15. 下面语句可以实现批量写入(写入记录数大于等于2)数据的是______。
A. INSERT INTO学生表VALUES(‘1001’,‘张杰’)
B. SELECT * FROM学生表
C. INSERT INTO学生表 SELECT * FROM学生表2
D. INSERT INTO学生表 SELECT * FROM学生表
答案:C
16. SQL Server中清空数据表的命令是______。
A DELETE
B CLEAR
C UPDATE
D TRUNCATE
答案:D
17. 有关数据的更新、删除、插入,下列叙述不正确的是______。
A 一条SQL语句可以修改一个表中的多条元组
B 一条SQL语句可以对多个表进行更新操作
C 一条SQL语句只能对一个表进行更新操作
D 一条SQL语句可以在一个表中插入多条元组
答案:B
18.INSERT SELECT语句的功能是______。
A 向新表中插入数据
B 执行插入查询
C 修改数据
D 删除数据
答案:A
19.SQL Server中删除表中数据的命令是______。
A DELETE
B SELECT
C UPDATE
D DROP 参考答案:A
20.下面数据类型中不是整型数据类型的是______。
A int
B smallint
C bigint
D binary
答案:D
21.属于日期时间型的数据类型是______。
A nchar
B bit
C datetime
D numeric
答案:C
22.如果某一个字段希望存储客户的家庭或者办公电话,那么该字段应该采用______数据类型。
A char(10)
B char(13)
C text
D int
答案:B
23.在SELECT语句中使用*,表示______。
A 选择任何属性
B 选择所有属性
C 选择所有元组
D 选择主键
答案:B
24.查询计算机系的所有男生信息______。
A select * from 学生表 where 所在系=计算机系 and 性别=男
B select * from 学生表 where 所在系=‘计算机系’and 性别=‘男’
C select * from 学生表 where 所在系=计算机系 or性别=男
D select * from 学生表 where 所在系=‘计算机系’or性别=‘男’
答案:B
25.SQL数据库中______不能作为转义字符用于SQL注入攻击。
A 单引号
B 分号
C 空格
D 下划线
答案:D
二、判断题
1. 分离数据库是将数据库从SQL Server实例中删除,同时对于该数据库的数据文件和事务日志文件也将删除。(х)
2. 数据库创建后,T-SQL语句是通过引用其逻辑名称来实现对数据库的操作。(√)
3. 文件组仅适用于数据文件,而不适用于日志文件。(√)
4. 设置数据库文件的大小自动增长虽然很省事,但由于不定时地增长,会让增长后的文件在磁盘中不连续存放,从而降低数据库的工作效率。(√)
5. 新建的文件组不能设置为默认文件组,因为它没有包含任何文件。(√)
6. 因为在数据库的主数据文件中会存放其它文件的相关信息,所以在附加数据库时,只要指定主数据文件就可以了。(√)
7. 数据库的脱机和分离是一个概念的两种说法。(х)
8. 在输入SQL语句时,标点符号必须是半角的。(√)
9.在数据表中进行数据编辑时,可以修改定义表结构时的数据类型,但要遵守定义表结构时的各种约束,否则无法编辑数据。(х)
10.SQL注入的主要方式是直接将代码插入参数中,这些参数被置入SQL命令中加以执行。(√)
11.在SQL注入攻击中,攻击者使用转义字符,比如单引号,“转义”开发人员的查询,从而构造自己的查询并加以执行。(√)
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论