视图(view):
是一种有结构,但是没结果的虚拟表
创建视图
基本语法:create view 视图名字 as select 语句;
创建单表视图:基表只有一个
创建多表视图:基表来源至少两个
查看视图
show tables [like] / desc 视图名 / show create table 视图名;
修改视图
alter view 视图名字 as 新的select语句;
删除视图
drop view 视图名字;
新增数据
多表视图不能新增数据
可以向单表视图插入数据,但是视图中包含的字段必须有基表中所有不能为空、或没有默认值的字段
视图是可以向基表插入数据的
删除数据
多表视图不能删除数据
单表视图可以删除数据
更新数据
多表视图不能钢更新数据
更新限制:with check option;
视图算法:
系统对视图以及外部查询视图的select语句的一种解析方式
视图算法分三种
undefined:未定义(默认的)
temptable:临时表算法
merge:合并算法
算法指定:
在创建视图的时候create algorithm=指定算法 view 视图名字 as select语句;