7项目七 视图及其应用(课件)- 《网站数据库应用技术SQL Server 2008(项目教程)》同步教学(水利水电版)
2024-03-21
|
55页
|
106人阅读
|
0人下载
普通
内容正文:
网站数据库应用技术SQL Server 2008
(项目教程)
项目七: 视图及其应用
视图的概念
视图的创建
视图的更改与删除
任务一
任务二
任务三
视图及其应用
任务四
视图的管理与维护
任务五
视图的使用
7.1 任务1: 视图的概念
7.1.1相关知识
视图的概念
视图是一种常用的数据库对象,是从一个或者多个数据表或视图中导出的“虚表”,视图的结构和数据是对数据表(基表)进行查询的结果。视图被定义后就被存储在数据库中,通过视图看到的数据只是存放在基表中的数据。当通过视图进行修改数据记录时,修改的是基表中的数据;同时,当基表的数据发生变化时,这种变化也会自动反映到视图中。
1.视图的概念
视图是基于某个查询结果而生成的“虚表”,同数据表一样,也是由行列组成的,而且在数据操作中,可以像使用表一样使用视图。
2.视图的分类
在SQL Server2008中主要有三种常用视图,包括标准视图、索引视图和分区视图。
其中,
(1)标准视图
将来自一个或多个基表的数据合并成为一个新的虚拟表。
(2)索引视图
索引视图已计算并存储起来,为视图创建唯一聚集索引可建立视图索引
相关知识
(3)分区视图
分区视图将分散在一台或多台服务器上的一组表的分区数据横向联接起来。
3.视图的优点
视图的主要优点包括实现集中多个表中,查询起来比较繁琐,在这种情况下,可以将多个表中的数据集中在一个视图中,只通过执行视图查询即可完成复杂的多表查询过程,从而大大简化了数据的查询操作。
表中通常存放的是某个实体的完整信息,如果不想让用户查看表中的有些信息,就可以为该用户创建一个视图,只将允许该用户查看的数据加入视图,并设置权限,使该用户允许访问视图而不能访问表,这样就保护了表中的数据。可以为表和视图分别设置访问权限,二者互不影响,从而提高了表的数据安全性。
在某些情况下,由于表中数据量太大,需要对表中的数据进行水平或者垂直分割,如果直接分割数据表,可能会引起应用程序的错误。可以使用视图对数据表中的数据进行分块形式,从而使应用程序仍可以通过视图来重载数据。
视图的概念
相关知识
视图的概念
有时SQL Server数据库需要与其它类型的数据库交换数据,即数据的导入和导出。如果SQL Server数据库中的数据存放在多个表中,进行数据交换就比较麻烦。如果将需要交换的数据通过一个视图来集中处理,再将视图中的数据与其它类型的数据库中数据交换,就简化了数据的维护管理。
通过union运算,可以将不同SQL Server上的表的数据联合查询生成一个结果集,即生成分区视图,通过该视图,可以提高查询效率。
7.2 任务2: 视图的创建
7.2.1 相关知识
视图的创建
1.视图创建的方法
为了创建视图,数据库管理员必须授予使用创建者创建的权限,视图的创建方式有两种,使用图形工具和使用T-SQL 语句。
2.创建的视图的限制
嵌套不能超过32层;
包含的列不可超过1024列;
不可使用COMPUTE、COMPUTE BY或 INTO;
使用ORDER BY时,还要同TOP。
3.创建视图的语法
使用Transact-SQL的CREAT VIEW语句创建视图的语法结构和参数说明如下:
基本语法:
CREATE VIEW [schema_name. ]View_name [colum_list]
[ WITH<ENCRYPTION | SCHEMABINDING |VIEW_METADATA> ]
AS
select_statement
[ WITH CHECK OPTION ];
<view_attribute> ::=
{ [ENCRYPTION ] [SCHEMABINDING ] [VIEW_METADATA] }
其中:语法中的符号及参数说明如下:
schema_name:视图所属框架名称
view_name:视图名称
column_list:视图中各个列使用的名称
AS:指定视图要执行的操作
select_statement:定义视图的SELECT语句
WITH CHECK OPTION:强制针对视图执行的所有数据修改语句,都必须符合在statement中设置的条件。通过视图修改时,WITH CHECK OPTION可确保提交修改后,认可通过视图看到数据。
ENCRYPTION:对sys.syscomments中包含CREAT VIEW语句文本的项进行加密。
SCHEMABINDING:将视图绑定到基础表的架构
VIEW_METADATA:指定为引用视图的查询请求浏览模式的元数据时,SQL Server 实例将向DB-Library、ODBC和OLE DB API 返回有关视图的元数据信息,而不返回基表的元数据信息。
7.2.2
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。