09 视图(view)
一、认识视图
-
简介:视图是一个虚拟表,其
内容由查询定义
。同真实表一样,视图包含一系列带有名称的列和行数据,但视图并不是数据库真实存储的数据表。
视图是从一个、多个表或者视图
中导出的表,包含一系列带有名称的数据列和若干条数据行。 -
视图与表的区别
- 视图不是数据库中真实的表,而是一张虚拟表,其结构和数据是建立在对数据中真实表的查询基础上的。
- 视图没有实际的物理记录,不是以数据集的形式存储在数据库中的,它所对应的数据实际上是存储在视图所引用的真实表中的。
- 视图是数据的窗口,而表是内容。表是实际数据的存放单位,而视图只是以不同的显示方式展示数据,其数据来源还是实际表。
- 视图是查看数据表的一种方法,可以查询数据表中某些字段构成的数据,只是一些 SQL 语句的集合。从安全的角度来看,视图的数据安全性更高,使用视图的用户不接触数据表,不知道表结构。
- 视图的建立和删除只影响视图本身,不影响对应的基本表。
-
视图的作用
- 定制用户数据,聚焦特定的数据
- 简化数据操作
- 提高基表数据的安全性
- 共享所需数据
- 更改数据格式
- 重用 SQL 语句
二、创建视图
- 基本格式:
create view [创建的视图名] as [DQL语句];
- 示例:
create view v_emp as select e.empno,e.ename,m.ename as mgr from emp e left join emp m on e.mgr=m.empno;
三、修改视图
- 基本格式:
alter view [要修改的视图名] as [DQL语句];
- 示例:
alter view v_emp as select empno,ename FROM emp;
四、删除视图
- 基本格式:
drop view [要删除的视图名];
- 示例:
drop view v_emp;