Mysql-视图
Posted 滑稽404#
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mysql-视图相关的知识,希望对你有一定的参考价值。
看了点关于mysql的面经,发现自己基础薄弱,回来补一下基础,顺便学习一下索引优化和数据库并发
复习来源尚硅谷
一、视图介绍
一种虚拟存在的表,使用视图时动态生成,其中只保留的SQL逻辑,并没有保存查询结果
应用场景
- 多个地方需要同样的查询结果
- 该查询结果的SQL语句比较复杂
# view_stu保存了 (select id,name from student) 这条语句
create view stu_view as (select id,name from student) ;
select * from stu_view where name like '张%';
select id,name from stu_view where name like '张%';
二、视图的优点
- 重用SQL语句
- 简化复杂的SQL,不必知道查询细节
- 保证了数据的安全性(一个表可能包含个人隐私,但是其他公司需要用到这张表的某些数据,就需要对这张表所需字段建立视图)
三、视图的使用
1、创建视图
# view_stu保存了 (select id,name from student) 这条语句
create view stu_view as (select id,name from student) ;
select * from stu_view where name like '张%';
select id,name from stu_view where name like '张%';
2、修改视图
方式一
# 如果存在stu_view 则修改为另一语句,如果不存在则创建
create or replace view 视图名
as
查询语句
方式二
alter view 视图名
as
查询语句
3、删除视图
drop 视图1,视图2,视图3...
四、视图的数据操作
一般视图都作为查询使用,会开权限来设置视图没有增删改
视图数据的修改是会让他SQL语句中关联的字段进行更新。但很多情况,视图的修改是无效的,比如from了一个分组的表等。
五、表和视图对比
以上是关于Mysql-视图的主要内容,如果未能解决你的问题,请参考以下文章