一、含义
- mysql5.1版本出现的新特性,本身是一个虚拟表,它的数据来自于表,通过执行时动态生成。
- 好处:
1、简化sql语句
2、提高了sql的重用性(因为是包装成视图来用)
3、保护基表的数据,提高了安全性
二、创建
create view 视图名
as
查询语句;
create or replace view 视图名
as
查询语句;
三、修改
create or replace view 视图名
as
查询语句;
alter view 视图名
as
查询语句;
四、删除
drop view 视图1,视图2,...;
五、查看
desc 视图名;
show create view 视图名;
六、视图的更新
- 插入:insert
- 修改:update
- 删除:delete
- **注意:**视图一般用于查询的,而不是更新的,所以具备以下特点的视图都不允许更新
①、包含分组函数、group by、distinct、having、union、
②、包含join
③、常量视图
④、where后的子查询用到了from中的表
⑤、用到了(即from了)不可更新的视图
七、视图和表的对比
| 关键字 | 物理内存 | 使用场景 |
---|
表 | table | 保存实际的数据 | 增删改查 |
视图 | view | 占用小,只保存sql逻辑,不保存查询结果 | 一般用于查询 |