Oracle的视图


1. 概述

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

2. 视图与表的区别

  1. 表需要占用磁盘空间,视图不需要

  2. 视图不能添加索引(所以查询速度略微慢点)

  3. 使用视图可以简化,复杂查询

    比如:学生选课系统

  4. 视图的使用利于提高安全性

    比如:不同用户查看不同视图

3. 创建/修改视图

创建视图:

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

创建或修改视图:

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

删除视图:

drop view 视图名

案例:

  1. 创建视图,把emp表的sal<1000的雇员映射到该视图(view)。

    create view myview as select * from emp where sal<1000;

  2. 为简化操作,用一个视图解决显示雇员编号,姓名和部门名称。

    create view myview2 as select emp.empno,emp.ename,dept.dname from emp,dept where emp.deptno=dept.deptno;


参考视频:https://www.bilibili.com/video/BV13W411H768?p=31

猜你喜欢

转载自blog.csdn.net/weixin_45605541/article/details/120693545
今日推荐