MySQL 视图
视图是一张表,由 select 的查询结果定义。视图与原表的数据是互通的,当通过视图修改数据时,会影响到原表的数据,当通过原表修改数据时,会影响到视图的数据。
定义如下:
create view view_name as select . . .;
举例:



多了一张表结构,现在查看一下该表:

正是上面创建视图语句后面的 select 语句的查询结果
现在用视图来修改一下数据:

查看一下 dept 表:

可以发现通过视图修改数据,影响到了原表的数据
现在再来修改原表数据:

查看一下 vde 表:

可以发现,SMITH 变成了 zhangsan,也就是通过修改原表数据,影响到了视图数据
删除视图
drop view view_name;
视图的规则和限制
- 与表一样,必须唯一命名(不能出现同名视图或表名)
- 创建视图数目无限制,但要考虑复杂查询创建为视图之后的性能影响
- 视图不能添加索引,也不能有关联的触发器或者默认值
- 视图可以提高安全性,必须具有足够的访问权限
-
order by可以用在视图中,但是如果从该视图检索数据select中也含有order by中的order by将被覆盖 - 视图可以和表一起使用
本站所有文章转发 CSDN 将按侵权追究法律责任,其它情况随意。