三. 简答题
1. 试说明使用视图的好处。
答:利用视图可以简化客户端的数据查询语句,使用户能从多角度看待同一数据,可以提高数据的安全性,视图对应数据库三级模式中的外模式,因此提供了一定程度的逻辑独立性。
2. 试说明哪类视图可实现更新数据的操作,哪类视图不可实现更新数据的操作。
答:一般只涉及到一张表的行列子集,且不含分组、统计计算等操作的视图是可更新数据的,其他情况一般都不能实现数据的更新操作。
3. 使用视图可以加快数据的查询速度,这句话对吗?为什么?
答:不对,因为通过视图查询数据时,比直接针对基本表查询数据多了一个转换过程,即从外模式到模式的转换。
4. 索引的作用是什么?
答:索引可以加快数据的查询效率。
5. 索引分为哪几种类型?分别是什么?它们的主要区别是什么
答:分为聚集索引和非聚集索引两种。聚集索引会对数据进行物理排序,非聚集索引不对数据进行物理排序。
6. 聚集索引一定是唯一性索引,对吗?反之呢?
答:不对。反之也不对。
7. 在建立聚集索引时,数据库管理系统首先要将数据按聚集索引列进行物理排序。对吗? 答:对。
8. 在建立非聚集索引时,数据库管理系统并不对数据进行物理排序。对吗?
答:对。
9. 不管对表进行什么类型的操作,在表上建立的索引越多越能提高操作效率。对吗?
10. 答:不对。
11. 适合建立索引的列是什么?
答:适合建立索引的情况:
包含大量非重复值的列。
在WHERE子句中经常用于进行BETWEEN AND、>、>=、< 和 <=等操作的列。
经常被用作连接操作的列。
ORDER BY或GROUP BY子句中涉及的列。
四.上机练习
1. 写出创建满足下述要求的视图的SQL语句,并执行这些语句。将所写语句保存到一个文件中。
(1) 查询学生的学号、姓名、所在系、课程号、课程名、课程学分。