oracle视图

视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值形式存在。行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成。

视图是oracle又一种数据对象,视图的主要的用处是简化操作,提高案例,满足不同用户的查询需求,视图不是一个真正存在的物理表,它是根据别的表动态生成的。

创建视图基本语法:

create view 视图名 as select语句 [with read only]

特别说明:with read only如果带上的话,只能查询,不能改写。

创建或修改视图基本语法:

create op replace view 视图名 as select语句 [with read only]

特别说明:with read only如果带上的话,只能查询,不能改写。

删除视图基本语法:

drop view 视图名;

案例:创建和emp表(empno,ename,job)完全一致的视图,看看带with read only和不带的区别。

注意:当表结构过于复杂时,请使用视图。

create or replace view empview as select empno,ename,job from emp;

视图可以简化操作(可以将多表中的字段合并在一张视图中)

例:我们希望查询雇员的名字和部门编号和部门名称

create or replace view empdeptview as select e.ename,e.deptno,d.dname from emp e,dept d where e.deptno=d.deptno with read only;

视图与表的区别

1、表需要占用磁盘空间,而视图不需要;

2、视图不能添加索引;

3、使用视图可以简化复杂查询;

4、使用视图利于提高安全性。

原文地址:https://www.cnblogs.com/roger112/p/7742120.html