View
View
视图的概念
- 视图是由数据库中的一个表或多个表导出的虚拟表,其内容由查询定义,作用是方便用户对数据的操作。数据库中只存放了视图的定义,而并没有存放视图中的数据,这些数据存放在原来的表中。
- 视图依赖的数据发生改变时,视图也跟着改变。视图本身发生改变也会影响到原数据。
- MySQL中视图的本质其实一组DQL语句,即数据库中只存放视图的定义,而不会单独为视图开辟额外的空间存放数据的拷贝。
视图的作用
- 简化操作
视图需要达到的目的就是所见即所需。视图不仅可以简化用户对数据的理解,也可以简化他们的操作。那些被经常使用的查询可以被定义为视图,从而使得用户不必为以后的操作每次指定全部的条件。 - 增加数据安全性
通过视图,用户只能查询和修改指定的数据。指定数据之外的信息,用户根本接触不到。这样可以防止敏感信息被未授权的用户查看,增强机密信息的安全性。 - 提高表的逻辑独立性
视图可以屏蔽原有表结构变化带来的影响。例如原有表增加列和删除未被引用的列,对视图不会造成影响。同样,如果修改表中的某些列,可以使用修改视图来解决这些列带来的影响。
视图的操作
创建/修改视图
1
2
3
4
5-- 加上OR REPLACE时,如果视图已经存在,则直接修改视图
CREATE [OR REPLACE] [ALGORITHM=算法名]
VIEW 视图名[(字段1,字段2,...)]
AS SELECT语句删除视图
1
DROP VIEW IF EXISTS 视图名
查看视图
1
DESCRIBE 视图名
查询视图
和查询表的语句完全一样
Comment