2016年9月计算机三级《数据库技术》考前练习题

1[单选题]下列关于数据库实施、运行和维护的说法中,最恰当的是(  )

2016年9月计算机三级《数据库技术》考前练习题

A.对于数据量超大的数据库应用系统,最好在刚刚建立好数据库且未导入任何数据前编写调试应用程序

B.对于数据量极大的中大型系统,不需要等待所有的数据都入库后才开始试运行,可以先装载少量的数据,等到试运行的结果符合设计要求后,再批量装入全部数据

C.数据库的重构不仅需要在原来的数据库设计的基础上做适当的扩充或修改,也最好考虑重新设计相应的应用程序

D.索引的根本目的是为了提高查询效率,但当数据量庞大时也会占用大量的磁盘空间。由于查询缓存的存在,因此不需要为经常在查询中作为条件的列建立索引

参考答案:B

2[单选题]下列有关基于C/S和基于B/S数据库应用系统体系结构的说法中,错误的是(  )

A.在C/S结构中,应用业务规则主要是在客户端实现的

B.在B/S结构中,应用业务规则主要是在数据库服务器端实现的

C.在C/S结构中,客户端属于"胖客户端";在B/S结构中,客户端属于"瘦客户端"

D.在C/S结构中,客户端需要专门开发;在B/S结构中,客户端一般只需要安装浏览器

参考答案:B

3[单选题]ADO对象模型中,RecordSet对象的AddNew方法的功能是(  )

A.在对应的数据库表中增加一条新记录

B.在记录集中增加一个新列

C.在内存中开辟存放一条新记录的空间

D.增加一个新的记录集

参考答案:A

4[单选题]以下关于两段锁协议的原理叙述错误的是(  )

A.每个事物的执行程序划分两个阶段,加锁阶段和解锁阶段

B.加锁阶段事务可以申请获得任何数据项上的任何类型的锁,允许释放任何锁

C.在解锁阶段,事务可以释放在任何数据项上任何类型的锁,但是不能再申请任何锁

D.每个事务开始执行后就进入了加锁阶段

参考答案:B

5[单选题]以下关于事务调度的说法错误的是(  )

A.调度分为串行调度和并发调度

B.串行调度的特点是一个事务的所有操作都执行完后才开始执行另一个事务

C.多个事务的调度必须保持每个事务的操作在事务中的执行顺序不变

D.并发调度中不同事务的操作不可以交差执行

参考答案:D

6[单选题]数据库中的的事务并发操作可能会引起死锁,引起死锁的原因是不同事务对数据项的资源占有,导致其他事务不能得到资源,而引起的相互等待导致死锁。假设某数据库系统中存在一个等待事务集{T1,T2,T3,T4,T5},其中T1正在等待被T2锁住的数据项A2,T2正在等待被T4锁住的数据项A4,T3正在等待被T4锁住的数据项A4,T5正在等待被T1锁住的数据项A。则关于系统状态正确的是(  )

A.系统处于死锁状态,需要撤销其中任意一个事务即可退出死锁状态

B.系统处于死锁状态,通过撤销T4可使系统退出死锁状态

C.系统处于死锁状态,通过撤销T5可使系统退出死锁状态

D.系统未处于死锁状态,不需要撤销其中的任何事务

参考答案:D

7[单选题]为了提高查询速度,对SC表(关系)创建唯一索引,应该创建在( )属性上。

A.(S#,C#)B.S#C.C#E

参考答案:A

8[填空题]TOP谓词必须与(  ) 子句一起使用。

参考解析:

ORDER BY

9[单选题]现有课程表(课程号,课程名,学分,开课学期,课程性质),课程号为主码。该表数据量较大。设经常要对该表执行类似下面的查询:

SELECT * FROM 课程表 WHERE 课程名 = '数据库原理'

为提高这类查询的执行效率,下列物理设计方案中,正确且最为合理的是(  )

A.为课程名列建立一个主索引

B.为课程名列建立一个位图索引

C.为课程名列建立一个辅索引

D.此表上不需要建任何索引

参考答案:C

10[单选题]

在SQL Server 2000中,有学生表(学号,姓名,年龄),其中“姓名”的数据类型是:char(10)。现要查询姓“张”且名字是三个字的学生的.详细信息,正确的语句是__________。

CT*FROM学生表WHERE姓名LIKE'张_’

CT*FROM学生表WHERE姓名LIKE'张_’

CT*FROM学生表WHERE姓名LIKE'张_'AND LEN(姓名)=3

CT*FROM学生表WHERE姓名LIKE'张_'AND LEN(姓名)=4

参考答案:C

11[单选题]若要查询“选修了课程号为C2的学生的学生号”,正确的表达是( ).

Ⅰ、pS#(sC#=′C2′(SC.) Ⅱ、sC#=′C2′(pS# (S))

Ⅲ、SELECT S# FROM SC WHERE C#=′C2′

A.仅Ⅰ和ⅡB.仅Ⅱ和ⅢC.仅Ⅰ和ⅢD.都正确

参考答案:D

12[填空题]在EXISTS谓词子查询中,子查询的执行次数由(  ) 决定。

参考解析:

外层表的行数。

13[单选题]分区表是将一个表的数据按水平方式划分为不同的子集,从而可以更快速有效地访问数据子集。现有表R(A, B)以及针对该表的如下SQL语句,如果基于列A对R进行范围分区,该分区设计方案能提高其性能的SQL语句是(  )

CT A,SUM(B) FROM R GROUP BY A

CT A FROM R ORDER BY B, A

TE FROM R WHERE A <> 10

CT MAX(A) FROM R WHERE B = 10

参考答案:A

14[单选题]下列关于SQL Server 2008视图的说法,错误的是(  )

A.数据库中只存储标准视图的定义,并不存储标准视图的内容

B.如果在视图上创建了唯一聚集索引,则数据库中将保存该视图的内容

C.索引视图的数据源可以是基本表,也可以是已建立的其他标准视图

D.索引视图引用的基本表必须与视图在同一个数据库中

参考答案:C

15[单选题]在SQL Server 2008中,设要为数据库DB1添加一个新的数据文件,该文件的逻辑名为filex,物理文件名为,存储位置为D:DB1,初始大小和最大大小均采用系统默认值,增长方式为自动增长,每次增加20%。下列语句中正确的是(  )

R DATABASE DB1 ADD FILE (

NAME = filex,

FILENAME = D:DB1,

FILEGROWTH = 20 )

R DATABASE DB1 ADD FILE (

NAME = filex,

FILENAME = D:DB1,

FILEGROWTH = 20% )

R DATABASE DB1 ADD FILE (

NAME = filex,

FILENAME = 'D:DB1',

FILEGROWTH = 20 )

R DATABASE DB1 ADD FILE (

NAME = filex,

FILENAME = 'D:DB1',

FILEGROWTH = 20% )

参考答案:D

16[单选题]关于数据库视图,下列说法正确的是(  )

A.视图可以提高数据的操作性能

B.定义视图的语句可以是任何数据操作语句

C.视图可以提供一定程度的数据独立性

D.视图的数据一般是物理存储的

参考答案:C