视图
概念
视图 是一种数据库对象,是从 一个或者多个 数据表或视图中导出的 虚表。
视图所对应的数据, 并不是真正的存储在 视图 中,而是 存储在所引用的数据表 中。
视图的结构和数据,是对数据表进行查询的结果。
优点
- 简化数据操作:视图可以简化用户处理数据的方式。
- 着重于特定数据:不必要的数据 或 敏感数据,可以不出现在视图中。
- 视图提供了一个简单而有效的安全机制,可以定制不同用户对数据的访问权限。
- 提供向后兼容性:视图使用户能够在表的架构更改时,为表创建向后兼容接口。
- 集中分散数据。
- 简化查询语句。
- 重用SQL语句。
- 保护数据安全。
- 共享所需数据。
- 更改数据格式。
创建视图
CREATE [OR REPLACE] [FORCE] VIEW '视图名'
AS '子查询'
[WITH [CASCADED|LOCAL] CHECK OPTION]
-- 只读。
[WITH READ ONLY]
示例代码
create or replace view dept_emp_view as
select SCOTT.EMP.ENAME, SCOTT.EMP.SAL, SCOTT.DEPT.DEPTNO, SCOTT.DEPT.DNAME, SCOTT.DEPT.LOC
from scott.DEPT
right join SCOTT.EMP on DEPT.DEPTNO = EMP.DEPTNO;
字段说明
字段 | 说明 |
---|---|
OR REPLACE | 若所创建的试图已经存在,Oracle 自动重建该视图 |
FORCE | 不管基表是否存在,Orac |