第 7章 视图的创建和使用
7.1 概述
7.2 创建视图
7.3 查看视图信息
7.4 修改和重命名视图
7.5 使用视图
7.6 删除视图
7.1 概述
7.1.1 视图的概念
视图是一种数据库对象, 是从一个或者多个
数据表或视图中导出的虚表, 视图的结构和数
据是对数据表进行查询的结果 。
视图被定义后便存储在数据库中, 通过视图
看到的数据只是存放在基表中的数据 。 当对通
过视图看到的数据进行修改时, 相应的基表的
数据也会发生变化, 同时, 若基表的数据发生
变化, 这种变化也会自动地反映到视图中 。
视图可以是一个数据表的一部分, 也可以是
多个基表的联合 。
7.1 概述
7.1.2 视图的优点
? 视图可以屏蔽数据的复杂性, 简化用户对数
据库的操作 。
? 视图可以让不同的用户以不同的方式看到不
同或者相同的数据集 。
? 可以使用视图重新组织数据 。
? 视图可以定制不同用户对数据的访问权限 。
本章首页
7.2 创建视图
? 视图的名称
? 只能在当前数据库中创建视图 。
? 一个视图中行, 列的限制 。
? 如果视图中某一列是函数, 数学表达式, 常
量或者来自多个表的列名相同, 则必须为列定
义名称 。
? 视图与基表的关系
? 不能在视图上创建索引, 不能在规则, 默认
的定义中引用视图 。
7.2 创建视图
7.2.1 使用企业管理器创建视图
7.2.2 使用 Transact-SQL语句创建视图
CREATE VIEW
[ < database_name >,] [ < owner >,]
view_name [ ( column [,...n ] ) ]
[ WITH < view_attribute > [,...n ] ]
AS
select_statement
[ WITH CHECK OPTION ]
< view_attribute >,:=
{ ENCRYPTION | SCHEMABINDING |
VIEW_METADATA }
7.2.3 使用向导创建视图 本章首页
7.3 查看视图信息
7.3.1 使用企业管理器查看视图信息
7.3.2 使用系统存储过程查看视图信息
sp_help 数据库对象名称
sp_helptext 视图 ( 触发器, 存储过程 )
sp_depends 数据库对象名称
本章首页
7.4 修改和重命名视图
7.4.1 修改视图
1,使用企业管理器修改视图
2,使用 Transact-SQL语句修改视图
ALTER VIEW view_name
[( column[,...n]) ]
[WITH ENCRYPTION]
AS
select_statement
[ WITH CHECK OPTION ]
7.4 修改和重命名视图
7.4.2 重命名视图
1,使用企业管理器重命名视图
2,使用系统存储过程重命名视图
sp_rename old_name,new_name
本章首页
7.5 使用视图
? 修改视图中的数据时每次修改都只能影响一个基表 。
? 不能修改那些通过计算得到的字段 。
? 如果在创建视图时指定了 WITH CHECK OPTION
选项, 那么所有使用视图修改数据库信息时, 必须保
证修改后的数据满足视图定义的范围 。
? 执行 UPDATE,DELETE命令时, 所删除与更新的
数据必须包含在视图的结果集中 。
? 如果视图引用多个表时, 无法用 DELETE命令删除
数据, 若使用 UPDATE命令则应与 INSERT操作一样,
被更新的列必须属于同一个表 。
7.5 使用视图
7.5.1 插入数据记录
1,使用企业管理器在视图中插入记录
2,使用 Transact-SQL语句通过视图插入
记录
7.5.2 更新数据记录
1,使用企业管理器在视图中更新记录
2,使用 Transact-SQL语句通过视图更新
记录
7.5 使用视图
7.5.3 删除数据记录
1,使用企业管理器在视图中删除记录
2,使用 Transact-SQL语句通过视图删除记

使 用 视 图 删 除 记 录 时, 可 以 直 接 利 用
Transact-SQL语言的 DELETE语句删除视图中
的记录 。 但应该注意, 必须指定在视图中定义
过的字段来删除记录 。
本章首页
7.6 删除视图
7.6.1 使用企业管理器删除视图
7.6.2 使用 Transact-SQL语句删除视图
DROP VIEW {view_name} [,… n]
本章首页