MySQL

MySQL 知识量:16 - 40 - 165

9.1 视图的概念><

什么是视图- 9.1.1 -

视图不同于真实的表,视图是虚拟的表,它包含的是一个SQL查询。简单讲,本质上视图是一个SQL查询的别名,这个查询的结果表就是视图所指的虚拟表。

因为视图本质上是SQL查询的别名,所以当底层表数据变化后,视图查询的结果也将变化。

视图的作用- 9.1.2 -

视图的作用即视图的优势,具体有以下几点:

  • 可以重用SQL语句。

  • 简化复杂的SQL操作,定义视图后,就不必了解它所代表的SQL操作的复杂的实现细节。

  • 可以使用表的组成部分而不是整个表。

  • 更好的保护数据,提供授权访问表的特定部分的途径。

  • 更改数据格式和表示。可以返回与底层表的表示和格式都不相同的数据。

规则和限制- 9.1.3 -

关于视图创建和使用的主要规则有:

  • 视图名称必须唯一,不能与其他表和视图重名。

  • 可创建的视图数量没有限制。

  • 创建视图必须有足够的访问权限,起码要有涉及的底层表的访问权限。

  • 视图可以嵌套,可以用从其他视图查询出的数据创建新视图。

  • 在视图中可以使用order by语句。

  • 视图不能索引,也不能有关联的触发器或默认值。

  • 视图和表可以一起使用,进行联结操作等。