数据库原理与应用(MySQL版) 第6章 索引和视图 习题参考答案.docx
习题参考答案
第6章索引和视图
选择题
1.下列关于索引的说法,正确的是
A.只要建立了索引就可以加快数据的查询效率
B.在一个表上可以创建多个聚集索引
C.在一个表上可以建立多个唯一的非聚集索引
D.索引会影响数据插入和更新的执行效率,但不会影响删除数据的执行效率
答案:C
2.下面适宜建立非聚集索引的是
A.经常作为查询条件的列
B.包含大量重复值的列
C.主键列
D.经常进行更改操作的列
答案:A
3.“CREATEUNIQUEINDEXIDX1ONT(C1,C2)”语句的作用是
A.在C1和C2列上分别建立一个唯一聚集索引
B.在C1和C2列上分别建立一个唯一非聚集索引
C.在C1和C2列的组合上建立一个唯一聚集索引
D.在C1和C2列的组合上建立一个唯一非聚集索引
答案:D
4.以下不是MySQL索引类型的是
A.主键索引
B.普通索引
C.外键索引
D.唯一索引
答案:C
5.DROPINDEX语句的作用是
A.删除索引
B.更新索引
C.建立索引
D.修改索引
答案:A
6.下列关于视图的说法,正确的是
A.视图与基本表一样,其数据也被保存到数据库中
B.对视图的操作最终都转换为对基本表的操作
C.视图的数据源只能是基本表
D.所有视图都可以实现对数据的增、删、改、查操作
答案:B
7.下列关于视图的说法,正确的是
A.视图是真实存在的表,并保存了待查询的数据
B.视图是真实存在的表,只有部分数据来源于基本表
C.视图是虚拟表,其数据只能从一个基本表中导出
D.视图是虚拟表,其数据可以从一个或者多个基本表或视图导出
答案:D
8.下列关于在视图的定义语句中可以包含的语句的说法,正确的是
A.只能包含数据查询语句
B.可以包含数据增、删、改、查语句
C.可以包含创建表的语句
D.所有语句都可以
答案:A
9.下列关于视图的说法,正确的是
A.通过视图可以提高数据查询效率
B.视图提供了数据的逻辑独立性
C.视图只能建立在基本表上
D.定义视图的语句可以包含数据更改语句
答案:B
二、简答题
索引的作用是什么?
答:在数据库中建立索引是为了加快数据的查询速度。
索引分为哪几种类型?分别是什么?它们的主要区别是什么?
答:索引分为两种类型,分别是聚集索引和非聚集索引。
聚集索引和非聚集索引有两个主要区别:(1)数据按聚集索引关键字的值进行物理排
序和存储,而不按非聚集索引关键字值的顺序排序和存储。(2)聚集索引的叶级节点
是存放数据的数据页,而非聚集索引的叶级节点不是存放数据的数据页。
在一个表上可以创建几个聚集索引?可以创建多个非聚集索引吗?
答:在一个表上只可以创建一个聚集索引。
可以创建多个非聚集索引。
聚集索引一定是唯一性索引,是否正确?反之呢?
答:正确。
唯一性索引不一定是聚集索引。
在建立聚集索引时,数据库管理系统是真正将数据按聚集索引列进行物理排序。是否正确?
答:正确。
在建立非聚集索引时,数据库管理系统并不对数据进行物理排序。是否正确?
答:正确。
不管对表进行什么类型的操作,在表上建立的索引越多越能提高数据操作效率。是否正确?
答:不正确。
索引通常情况下可以提高哪个数据操作的效率?
答:索引通常情况下可以提高数据查询的效率。
视图的作用是什么?
答:(1)简化数据查询语句。
(2)使用户能从多角度看待同一数据。
(3)提高了数据的安全性。
(4)提供了一定程度的逻辑独立性。
10.使用视图可以加快数据的查询速度,这句话对吗?为什么?
答:不对。对视图的查询还需转换成对基本表的查询,并不能加快数据的查询速度。
11.视图与表的区别是什么?
答:视图是由从数据库的基本表中选取出来的数据组成的逻辑窗口,是基本表的部分行和列数据的组合。它与基本表不同的是,视图是一个虚表。数据库中只存储视图的定义,而不存储视图所包含的数据,这些数据仍存放在原来的基本表中。