欢迎来到天天文库
浏览记录
ID:61764481
大小:216.00 KB
页数:62页
时间:2021-03-19
《第10章--视图和索引.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、数据库原理与应用教程第10章视图和索引第10章视图和索引数据库的基本表是根据所有用户的需求按照数据库设计人员的观点设计的,并不一定符合用户的应用需求。SQLServer可以根据各个用户的需求重新定义表的数据结构,这种数据结构就是视图。索引是以表列为基础的数据库对象,它保存着表中排序的索引列,并且记录了索引列在数据表中的物理存储位置,实现了表中数据的逻辑排序。索引可以使数据库程序在最短的时间内找到所需要的数据,而不必查找整个数据库,这样可以节省时间,提高查找效率。第10章视图和索引在数据库的三级模式结构当中,索引对应的是内模式部分,基本表对
2、应的是模式部分,而视图对应的是外模式部分。本章主要介绍视图的基本概念,视图的创建、修改和删除,利用视图实现对基本表中数据的操作;索引的基本概念,索引的分类以及创建、修改和删除索引等操作。10.1视图视图(View)是关系数据库系统提供给用户以多种角度观察数据库中数据的重要机制,在用户看来,视图是通过不同路径去看一个实际表,就像一个窗口,我们通过窗口去看外面的高楼,可以看到高楼的不同部分,而透过视图可以看到数据库中自己感兴趣的内容。10.1.1视图概述视图作为一种数据库对象,为用户提供了一个可以检索数据表中数据的方式。视图是一个虚表,可以视
3、为另一种形式的表,是从一个或多个表中使用SELECT语句导出的虚表,那些用来导出视图的表称为基本表。10.1.1视图概述用户通过视图来浏览数据表中感兴趣的部分或全部数据,而数据的物理存储位置仍然在基本表中。所以视图并不是以一组数据的形式存储在数据库中,数据库中只存储视图的定义,而不存储视图对应的数据,这些数据仍存储在导出视图的基本表中,视图实际上是一个查询结果。当基本表中的数据发生变化时,从视图中查询出来的数据也随之改变。使用视图可以集中、简化和定制用户的数据库显示,用户可以通过视图来访问数据,而不必直接去访问该视图的基本表。1.视图的优
4、点(1)为用户集中数据,简化用户的数据查询和处理。使得分散在多个表中的数据,通过视图定义在一起,屏蔽了数据库的复杂性,用户不必输入复杂的查询语句,只需针对此视图做简单的查询即可。(2)保证数据的逻辑独立性。对于视图的操作,例如,查询只依赖于视图的定义,当构成视图的基本表需要修改时,只需要修改视图定义中的子查询部分,而基于视图的查询不用改变。(3)重新定制数据,使得数据便于共享。(4)数据保密。对不同的用户定义不同的视图,使用户只能看到与自己有关的数据。同时简化了用户权限的管理,增加了安全性。2.视图的分类SQLServer2005中,视图
5、可以分为标准视图、索引视图和分区视图。(1)标准视图标准视图组合了一个或多个表中的数据,可以获得使用视图的大多数好处,可以实现对数据库的查询、修改和删除等基本操作。(2)索引视图索引视图是被具体化了的视图,它已经过计算并存储。可以为视图创建索引,即对视图创建一个唯一的聚集索引。索引视图可以显著提高某些类型查询的性能。索引视图尤其适于聚合许多行的查询,但不太适合于经常更新的基本数据集。(3)分区视图分区视图在一台或多台服务器间水平连接一组成员中的分区数据。这样,数据看上去如同来自于一个表。10.1.2创建视图要使用视图,首先必须创建视图。视
6、图在数据库中是作为一个独立的对象存储的,必须遵循以下原则。(1)只能在当前数据库中创建视图。但是,如果使用分布式查询定义视图,则新视图所引用的表和视图可以存在于其他数据库中,甚至其他服务器上。(2)视图名称必须遵循标识符的规则,且对每个用户必须唯一。此外,该名称不得与该用户拥有的任何表的名称相同。(3)用户可以在其他视图之上建立视图。(4)如果视图中的某一列是一个算术表达式、内置函数或常量派生而来,而且视图中两个或者更多的不同列拥有一个相同的名字(这种情况通常是因为在视图的定义中有一个连接,而且这两个或者多个来自不同表的列拥有相同的名字)
7、,此时,用户需要为视图的每一列指定特定的名称。10.1.2创建视图(5)定义视图的查询不可以包含ORDERBY、COMPUTE或COMPUTEBY子句或INTO关键字。(6)不能在视图上定义全文索引定义。(7)不能创建临时视图,也不能在临时表上创建视图。(8)不能对视图执行全文查询,但是如果查询所引用的表支持全文索引,就可以在视图定义中包含全文查询。(9)不能将规则或者DEFAULT定义关联于视图。10.1.2创建视图在SQLServer2005中创建视图主要有两种方式:一种方式是在SQLServerManagementStudio中使用
8、向导创建视图;另一种方式是通过在查询窗口中执行T-SQL语句创建视图。10.1.2创建视图1.在SQLServerManagementStudio中创建视图在SQLServerManageme
此文档下载收益归作者所有