肖sir__mysql之视图__009

mysql之视图

一、什么是视图

视图是一个虚拟表(逻辑表),它不在数据库汇总以存储的形式保存(本身不包含数据),视图是动态生成

二、视图的作用?

1、解决数据库中的非常复杂的数据查询

比如:将多表合并一个视图,在视图中查询数据

2、安全、保护公司的保密字段

比如:创建视图、针对指定的字段

三、视图优点?

1、提高查询效率

2、安全

3、简单 (不需要关心表结构)

四、视图的缺点:

1、性能差:

视图查询结果转换成对表的查询

2、修改限制

修改视图数据,必须把它转化成基础表修改

================================

五、视图实战

1、show tables 查看库中所有的表

2、创建视图:

格式:

create view 视图表名 as( 语句)

案例:

create VIEW st as ( select * from dept INNER JOIN emp on dept.dept1=emp.dept2 )

3、查看视图:

格式:select * from 视图;

案例:select * from st ;

4、查看创建的视图

格式:show create view 已创建视图名 ;

案例:show create view st ;

5、删除视图

格式:

DROP view 表名 ;

案例:

DROP view st1 ;

6、视图的特点

a、视图是由基础表产生的虚拟表(基础表删除,视图也会删除)

b、视图删除不隐性基础表

c、视图删除、更新数据,直接影响基础表

d、视图不能修改字段

=======================================

面试题:

1、什么是视图?

2、视图作用?

3、视图特点?

4、如何创建一个视图?

5、我们工作中用视图做什么?

a、便于查询复杂的语句,

b、保护隐蔽性的字段

相关推荐
要开心吖ZSH1 小时前
MVCC 进阶:快照读 vs 当前读、幻读与 Next-Key Lock
java·数据库·sql·mysql·mvcc
万亿少女的梦1681 小时前
基于Spring Boot的社区管理系统设计与实现
java·spring boot·mysql·vue·系统设计
翔云1234562 小时前
简单概括主库上 Executed_Gtid_Set 是什么时候更新的
数据库·mysql
要开心吖ZSH2 小时前
Java事务与MySQL事务的关系及MVCC通俗解析
java·开发语言·mysql·mvcc
爱喝热水的呀哈喽2 小时前
hypermesh两个网格参数解析
服务器·数据库·mysql
万亿少女的梦1683 小时前
基于Spring Boot的楚雄旅游景区门票售卖系统设计与实现
java·spring boot·mysql·vue·系统设计
_Jonas3 小时前
Python SqlAlchemy对数据库各种操作整理(MySQL为例)
数据库·python·mysql
talenteddriver4 小时前
MySQL的ABC联合索引
mysql
wear工程师4 小时前
可重复读能不能防幻读?MVCC 和 Next-Key Lock 到底谁在起作用
mysql·面试
AOwhisky4 小时前
Kubernetes(K8s)学习笔记(第十四期):集群存储与有状态应用(下篇):StatefulSet 有状态应用管理
redis·笔记·mysql·云原生·kubernetes·云计算·k8s