MySQL 视图介绍
简介:在本教程中,您将学习MySQL View。我们将解释MySQL如何实现视图。 从版本5+开始,MySQL支持数据库视图。在MySQL中,几乎所有视图功能都符合SQL:2003标准。MySQL以两种方式处理对视图的查询:
- 第一种方式,MySQL 基于视图定义语句创建临时表,并在此临时表上执行传入查询。
- 在第二种方式中,MySQL将传入查询与定义视图的查询组合成一个查询并执行组合查询。
arc
到驻留在特定数据库文件夹中的(存档)目录中。备份文件的名称是view_name.frm-00001
。如果再次更改视图,MySQL将创建一个名为的新备份文件view_name.frm-00002
。
MySQL允许您基于其他视图创建视图。换句话说,您可以在SELECT
定义视图的语句中引用其他视图。
MySQL视图的限制
您无法在视图上创建索引。当您根据使用合并算法的视图查询数据时,MySQL使用基础表的索引。对于使用temptable
算法的视图,当您根据视图查询数据时,不会使用索引。
您不能 在MySQL 5.7.7之前定义视图的SELECT
语句的FROM
子句中使用子查询
如果删除 或重命名视图引用的表,MySQL不会发出任何错误。但是,MySQL确实使视图无效。您可以使用CHECK TABLE
语句来检查视图是否有效。
一个简单的视图可以更新。基于SELECT
具有连接,子查询等的复杂语句创建的视图不可更新。
MySQL 不像其他数据库系统(如Oracle,PostgreSQL)那样支持物化视图。