Oracle中的视图
2013-07-17 20:26
162 查看
Oracle中的视图
视图(view)实际上是在一张或多张基表上建立的一个虚表,是预定义的查询。从视图中查询数据和从基本表中查询数据的方法是一样的。那么为什么出现视图又使用视图呢?原因有三:1.
可以限制用户只能通过视图检索数据。可以对最终用户屏蔽建表时底层的基表。
2.
可以将复杂的查询保存为视图。可以对最终用户屏蔽一定的复杂性。
3.
限制某个视图只能访问基表中的部分列或者部分行的特定数据。这样实现一定的安全性。
创建视图的语法如下:
CREATE [OR REPLACE]
[{FORCE|NOFORCE}] VIEW view_name
AS
SELECT查询
[WITH READ
ONLY]
其中的or replace是如果有视图已经存在,则替换视图。
Force和noforce是决定是否强制创建视图,force是在基表不存在时也可以创建视图的标志,noforce指如果基表不存在,则不能创建视图。Noforce是默认选项。
With read only是限制视图只能执行查询操作,不能进行增删改操作。可以理解为共享锁。
下面是一个小例子:
SQL> create or replace view teview
2 as
3 select * from
testss;
View created
这是创建了一个名为teview的视图,功能是查询表名为testss的内容,需要注意的是创建视图前要给用户授权,即grant create view to
admin(用户名)
,只有这样,才有权创建视图。然后可以使用一般的查询语句查询视图。如select * from
tvview,这样就可以使用视图了。个人觉得,视图的最大作用在于有一些复杂的多表联合查询就可以使用视图,查询出来一些混合的数据之后再根据条件找到满足要求的数据。
相关文章推荐
- .Net程序员学用Oracle系列:视图、函数、存储过程、包
- oracle 索引,视图,存储过程,触发器 函数
- oracle视图
- Oracle dba_tablespace_usage_metrics 视图 查看表空间 说明
- oracle 视图详解
- [Oracle]几款Database常用工具和字典表视图
- 我的Oracle 9i学习日志(9)--数据字典与动态性能视图及练习
- Oracle连接视图DML操作的限制
- oracle_视图
- Oracle 动态性能视图
- Oracle数据字典与动态性能视图
- oracle物化视图详解
- 什么是Oracle的物化视图
- Oracle自带的表和视图
- oracle 视图的本质
- Oracle 常用的V$视图脚本(一)
- Oracle创建用户并给用户授权查询指定表或视图的权限
- Oracle 11g系列:视图
- vfp6-8用 oracle作后端数据库时,vfp 远程视图总是提示“更新冲突”的解决方案
- Oracle 笔记(十)、视图、同义词、序列