oracle视图
- 视图是一个虚拟表,其内容由查询定义
同真实的表一样,视图包含一系列带有名称的列和行数据
但是,视图并不在数据库中以存储的数据值集形式存在
行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成
视图与表的区别
- 表需要占用磁盘空间,视图不需要
- 视图不能添加索引
- 使用视图可以简化复杂查询
- 视图有利于提高安全性(比如:不同用户查看不同视图)
创建视图
create view 视图名 as select语句 [with read only];
创建或修改视图
create or replace view 视图名 as select语句 [with read only];
删除视图
drop view 视图名;
--创建视图,把emp表的sal<1000的雇员映射到该视图
create view myview as select * from emp
where sal<1000;
--为了简化操作,用一个视图解决 显示雇员编号、姓名和部门名称
create view myview as
select emp.empno,emp.ename,dept.dname from emp,dept
where emp.deptno = dept.deptno;