MariaDB&MySQL视图简介

MariaDB&MySQL视图简介

一、视图简介
  视图(View)其实就可以理解为虚拟表,内容与真实的表相似,有字段有记录。视图并不在数据库中以存储的数据形式存在。行和列的数据来自定义视图时查询所引用的基表,并且在具体引用视图时动态生成
更新视图的数据,就是更新基表的数据,更新基表数据,视图的数据也会跟着改变。

二、视图优点
(一)使用简单
  用户不用关心视图中的数据如何查询获得,视图中的数据已经时过滤好的复合条件的结果集
(二)安全
  用户只能看到视图中的数据、数据独立、一旦视图结构确定,可以屏蔽表结构对用户的影响。

三、视图使用限制
(一)不能在视图上创建索引,并且不能在视图的FROM子句中不能使用子查询

(二)某些关键字的SQL语句,例如:聚合函数(SUM、MIN、MAX、COUNT等)、DISTINCT、GROUP BY、HAVING、UNION或UNION ALL是不能使视图更新的

(三)常量视图、JOIN、FROM一个不能更新的视图

(四)WHERE子句的子查询引用了FROM子句中的表不能更新视图

(五)使用了临时表不能更新视图