文章目录
一、视图的含义
虚拟表,和普通的表一样使用,行和列的数据来自定义视图的查询中使用的表。MySQL15.1版本出现的新特性,是通过表动态生成的数据,只保存sql逻辑,不保存查询结果。
例如:查询姓张的学生的学生名和专业名,以前的写法是:
现在可以先将常用的语句封装成一个视图:
再查询:
二、视图的创建
1. 语法
create view 视图名 as 查询语句;
2. 案例
(1)
三、视图的修改
1. 语法
方式一:
create or replace view 视图名 as 查询语句;
方式二:
alter view 视图名 as 查询语句;
四、视图的查看和删除
1. 视图的查看
desc 视图名;
show create view 视图名;
2. 视图的删除
drop view 视图名,视图名...;
五、视图的更新
1. 视图也可以进行插入、修改、删除等操作
2. 具备以下特点的视图不允许更新
(1)包含以下关键词的sql语句:分组函数、distinct、group by、having、union或union all。
(2)常量视图。
(3)select中包含子查询。
(4)join
(5)from一个不能更新的视图。
(6)where子句的子查询引用了from子句中的表。