【MySQL】08.视图

**视图就是一个由查询到的内容定义的虚拟表。**它和真实的表一样,视图包含一系列带有名称的列和行数据。视图的数据变化会影响到基表,基表的数据变化也会影响到视图。

1. 基本使用

sql 复制代码
mysql> select * from user;
+----+-----+-----------+
| id | age | name      |
+----+-----+-----------+
|  1 |  56 | 欧阳锋    |
|  2 |  26 | 黄蓉      |
|  3 |  18 | 杨过      |
|  4 |  16 | 小龙女    |
|  5 |  36 | 郭靖      |
+----+-----+-----------+
5 rows in set (0.00 sec)

-- 创建视图
mysql> create view myview as select id,name from user;
Query OK, 0 rows affected (0.01 sec)

mysql> select * from myview;
+----+-----------+
| id | name      |
+----+-----------+
|  1 | 欧阳锋    |
|  2 | 黄蓉      |
|  3 | 杨过      |
|  4 | 小龙女    |
|  5 | 郭靖      |
+----+-----------+
5 rows in set (0.00 sec)

-- 更改视图
mysql> update myview set name = 'aaa' where id = 1;
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql> select * from myview;
+----+-----------+
| id | name      |
+----+-----------+
|  1 | aaa       |
|  2 | 黄蓉      |
|  3 | 杨过      |
|  4 | 小龙女    |
|  5 | 郭靖      |
+----+-----------+
5 rows in set (0.00 sec)

mysql> select * from user;
+----+-----+-----------+
| id | age | name      |
+----+-----+-----------+
|  1 |  56 | aaa       |
|  2 |  26 | 黄蓉      |
|  3 |  18 | 杨过      |
|  4 |  16 | 小龙女    |
|  5 |  36 | 郭靖      |
+----+-----+-----------+
5 rows in set (0.00 sec)

-- 删除视图
mysql> drop view myview;
Query OK, 0 rows affected (0.01 sec)

2. 视图的映射规则和限制

视图与表一样,必须唯一命名。
创建视图数目无限制,但要考虑复杂查询创建为视图之后的性能影响视图不能添加索引,也不能有关联的触发器或者默认值
视图可以提高安全性,必须具有足够的访问权限 order by 可以用在视图中,但是如果从该视图检索数据 select 中也含有 order by ,那么该视图 中的 order by 将被覆盖
**•**视图可以和表一起使用

相关推荐
誰能久伴不乏1 分钟前
Linux系统调用概述与实现:深入浅出的解析
linux·运维·服务器
程序员学习随笔13 分钟前
Linux进程深度解析(2):fork/exec写时拷贝性能优化与exit资源回收机制(进程创建和销毁)
linux·运维·服务器
mmoyula13 分钟前
【RK3568 PWM 子系统(SG90)驱动开发详解】
android·linux·驱动开发
-SGlow-33 分钟前
MySQL相关概念和易错知识点(2)(表结构的操作、数据类型、约束)
linux·运维·服务器·数据库·mysql
代码改变世界ctw1 小时前
Linux内核设计与实现 - 第14章 块I/O层
linux·运维·服务器
明月5661 小时前
Oracle 误删数据恢复
数据库·oracle
_Kayo_2 小时前
VUE2 学习笔记6 vue数据监测原理
vue.js·笔记·学习
水瓶_bxt3 小时前
Centos安装HAProxy搭建Mysql高可用集群负载均衡
mysql·centos·负载均衡
♡喜欢做梦3 小时前
【MySQL】深入浅出事务:保证数据一致性的核心武器
数据库·mysql
遇见你的雩风3 小时前
MySQL的认识与基本操作
数据库·mysql