肖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、保护隐蔽性的字段

相关推荐
FungLeo7 分钟前
成为全栈·基础补充·数据库迁移与事务:数据结构怎样安全演进
mysql·postgresql·sqlite·数据一致性·数据库事务·数据库迁移·成为全栈
aiks_yuan7 小时前
MySQL GROUP BY 很慢怎么优化:加了索引反而从 1 秒变 7 秒,Using temporary 该不该消(MySQL 8.2 实测 400 万行)
mysql
数据库小学妹8 小时前
MySQL大字段治理:行溢出机制、覆盖索引与拆表
数据库·mysql·性能优化
这个DBA有点耶9 小时前
MySQL 8.0不可见索引:删索引怕出事,不删又拖慢写入——中间态怎么用?
数据库·mysql·代码规范
噜哥带你玩转 AI 大模型11 小时前
面试加分项!CASE WHEN 两种写法、CTE 公共表表达式、四大类窗口函数,老哥一次讲透
mysql·窗口函数·cte·sql 进阶
bksczm12 小时前
InnoDB 内存结构总览:Change Buffer、AHI 与 Log Buffer
数据库·mysql
招风的黑耳12 小时前
SpringBoot+Vue+MySQL 民宿在线预定平台 完整可运行版(源码+文档)
vue.js·spring boot·mysql
.痞老板.15 小时前
mysql初阶--数据库设计
数据库·mysql·oracle
Decay__16 小时前
SQL Server 数据库全栈运维实战系列 — 合集索引(24 篇)
运维·数据库·sql·mysql·架构
Thanks_ks16 小时前
SQL 的 GROUP BY 与聚合函数:从会写 SELECT 到会做统计
数据库·sql·mysql·group by·数据统计·聚合函数·having