【MySQL】视图

目录

一、什么是视图

二、视图的操作

2.1 创建视图

2.2 删除视图

三、视图规则和限制


一、什么是视图

视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。视图的数据变化会影响到基表(创建视图所用的表),基表的数据变化也会影响到视图。

二、视图的操作

2.1 创建视图

create view 视图名 as select语句;

我们可以用上述语句来创建视图

下面我们来进行演示(来自oracle 9i的经典测试表,该资源已上传):

【MySQL】视图_第1张图片

如果我们经常用到该句查询,我们可以将其创建为一个视图,将该查询的结果作为临时表保存起来:

【MySQL】视图_第2张图片

现在我们来看看这个表中存储的是不是select语句中的数据:

【MySQL】视图_第3张图片

真的是这样的哎。下面对这个视图中的数据做些修改,看会不会影响基表:

【MySQL】视图_第4张图片

再来看看对基表数据做修改会不会影响到视图:

【MySQL】视图_第5张图片

 从上面的操作我们可以看到视图的数据变化会影响到基表,基表的数据变化也会影响到视图

2.2 删除视图

我们用下面的语句就可以删除视图:

drop view 视图名;

例如:

【MySQL】视图_第6张图片

三、视图规则和限制

视图与表一样,必须唯一命名(不能出现同名视图或表名)

创建视图数目无限制,但要考虑复杂查询创建为视图之后的性能影响

视图不能添加索引,也不能有关联的触发器或者默认值

视图可以提高安全性,必须具有足够的访问权限

order by可以用在视图中,但是如果从该视图检索数据select中也含有 order by ,那么该视图中的order by将被覆盖

视图可以和表一起使用


感谢各位的阅览~下期很快和大家见面~

更多MySQL技能请看:http://t.csdn.cn/W9dQl

博主努力更新中~

你可能感兴趣的:(MySQL,mysql,数据库,linux,sql)