MySQL中的视图特性使用及说明
更新时间:2025年10月09日 10:52:59 作者:秦jh_
视图是虚拟表,由查询定义,包含列和行数据,其与基表数据相互影响,修改任一方均会同步变化,创建需唯一命名,不可添加索引或触发器,可提升安全性,ORDER BY在视图中优先,但被SELECT中的覆盖
视图
视图是一个虚拟表,其内容由查询定义。
同真实的表一样,视图包含一系列带有名称的列和行数据。
视图的数据变化会影响到基表,基表的数据变化也会影响到视图。
基本使用
- 创建视图
create view 视图名 as select语句;
- 案例

如果我们频繁使用这个表,每次都要那么长的语句,太麻烦了。


创建视图后,实际就创建了一个表,这个表就叫做视图。


修改了视图,对基表数据有影响


修改了基表,对视图有影响
- 删除视图
drop view 视图名;
视图规则和限制
- 与表一样,必须唯一命名(不能出现同名视图或表名)
- 创建视图数目无限制,但要考虑复杂查询创建为视图之后的性能影响
- 视图不能添加索引,也不能有关联的触发器或者默认值
- 视图可以提高安全性,必须具有足够的访问权限
- order by 可以用在视图中,但是如果从该视图检索数据 select 中也含有 order by ,那么该视图 中的 order by 将被覆盖
- 视图可以和表一起使用
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
解决mysql创建数据库后出现:Access denied for user ''root''@''%'' to dat
这篇文章主要给大家介绍了如何解决mysql在创建数据库后出现:Access denied for user 'root'@'%' to database 'xxx'的错误提示,文中介绍的非常详细,需要的朋友可以参考借鉴,下面来一起看看吧。2017-05-05
MySQL启动方式之systemctl与mysqld的对比详解
MySQL 是当今最流行的开源关系型数据库之一,其性能、可靠性和易用性让它广泛应用于各种场景,如何正确启动 MySQL 服务可能并不是一件简单的事情,本文将聚焦两种常用的 MySQL 启动方式:通过 systemctl 启动和直接使用 mysqld 启动,需要的朋友可以参考下2024-11-11
mysql中批量插入数据(1万、10万、100万、1000万、1亿级别)
本文主要介绍了mysql中批量插入数据(1万、10万、100万、1000万、1亿级别),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2022-08-08


最新评论