一.创建视图语句
craete view t as select * from b;
查看视图信息
desc t;
show table status like 't' \G;
查看视图详细信息
show create view '视图名' \G;
二.在views中查看视图详细信息
select * from information_schema.views;
当基本表发生变化时,通过修改视图来保持基本表的一致性
create or replace view t as select * from t;
alter view t as select quantity from t;
当视图包含以下内容时,视图的更新操作将不执行
(1)视图中不包含基表中被定义非空的列
(2)在定义的视图的select语句后的字段列表中使用了数字表达式
(3)在定义视图中的select语句使用了聚合函数
(4)在定义视图中的select语句使用了distinct,union,top,groupby,或having子句
三.mysql中视图与表的区别及关系是什么
(1)视图是以编译好的SQL语句。是基于SQL语句的结果集的可视化表,而表不是
(2)视图是没有物理记录,而表有
(3)表是内容,视图是窗口
(4)表占用物理空间而视图不占用物理空间,视图只是逻辑概念存在,表可以及时他进行修改,但视图只能创建的语句来修改
(5)视图是查看数据表的一种方法。可以查询数据表中某些字段的数据,只是一些SQL语句的集合,从安全的角度来看,视图防止用户接触数据表,因此用户不知道表结构
(6)表是全局模式的表,是实表;视图属于局域中的表,是虚表
(7)视图的建立和删除只是删除视图本身,不影响对应的基本表