Oracle 视图
一、视图的定义(预定义查询)
视图是一个虚拟表,视图并不在数据库中存储数据值,数据库中只在数据字典中存储对视图的定义。
二、优点
1.为用户集中数据,简化用户的数据查询和处理。
2.屏蔽数据库的复杂性,用户不必了解数据库的复杂性。
3.简化用户权限的管理,只授予用户使用视图的权限。
4.便于数据共享,多个用户不必都定义所需的数据。
5.可以重新组织数据,以便关联到其他应用中。
2.屏蔽数据库的复杂性,用户不必了解数据库的复杂性。
3.简化用户权限的管理,只授予用户使用视图的权限。
4.便于数据共享,多个用户不必都定义所需的数据。
5.可以重新组织数据,以便关联到其他应用中。
语法
--视图的语法
create [ or replace ] [NO Force | Force] View
view_name --视图名称
[(alias,...)inline_constraint(s)]--视图的字段别名或内联约束
[out_of_line_constraint(s)]--也是视图的约束
as
subquery --视图的查询语句
[With {Read Only | Check Option [Constraint constraint_name]}]--视图的约束
--关键字No Force和Force
No Force :表示不强制创建视图。也是默认项。
Force :表示强制创建视图,也就是如果查询的表不存在,也可以创建该视图。但视图创建后在创建视图引用的源表,这样视图才有意义。
--关键字 With Read Only 和 With Check Option
With Read Only :是视图的约束关键字,表示视图只读。不可以更改视图数据。默认情况是可以更改视图数据的。
With Check Option :是视图的约束关键字,表示视图在更改数据时,必须满足视图查询源表语句where 关键字后的条件。