我是靠谱客的博主 柔弱电灯胆,最近开发中收集的这篇文章主要介绍mysql视图有索引吗,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

本教程操作环境:windows10系统、mysql8.0.22版本、Dell G3电脑。

mysql视图有索引吗

视图没有索引,视图是一张虚表,并不真实存在在数据库中,所以也就没有什么主键、索引,因为根本就没有行和列,本质上就是语句,当你调用视图的时候数据库管理系统会先去找视图中封装的语句,先执行生成视图的语句,再在视图的基础上进行查询

视图中不能使用索引,也不能使用触发器(索引和触发器后面会分析)

使用可以和普通的表一起使用,编辑一条联结视图和普通表的sql语句是允许的。

关于使用视图对数据的进行更新(增删改),因为视图本身并没有数据,所以这些操作都是直接作用到普通表中的,但也并非所有的视图都可以进行更新操作,如视图中存在分组(group by)、联结、子查询、并(unoin)、聚合函数(sum/count等)、计算字段、DISTINCT等都不能对视图进行更新操作,因此我们前面的例子也是不能进行更新操作的,事实上,视图更多的是用于数据检索而更新,因此对于更新也没有必要进行过多阐述。

视图的本质

到此对于视图的创建和使用都比较清晰了,现在准备进一步认识视图的本质,前面我们反复说过,视图是一张虚拟表,是不带任何数据的,每次查询时只是从普通表中动态地获取数据并组合,只不过外表看起来像一张表罢了。其原理通过下图便一目了然:

12.png

事实上有些时候视图还会被用于限制用户对普通表的查询操作,对于这类用户只赋予对应视图的select操作权限,仅让他们只能读取特定的行或列的数据。这样我们也就不用直接使用数据库的权限设置限制行列的读取,同时也避免了权限细化的麻烦。

推荐学习:mysql视频教程

以上就是mysql视图有索引吗的详细内容,更多请关注靠谱客其它相关文章!

最后

以上就是柔弱电灯胆为你收集整理的mysql视图有索引吗的全部内容,希望文章能够帮你解决mysql视图有索引吗所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(94)

评论列表共有 0 条评论

立即
投稿
返回
顶部