MySQL之视图

概念

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

基本使用

创建视图

create view 视图名 as select语句;

示例:

原先数据库中的表

创建视图后

修改视图中的数据对基表有影响。

修改基表中的数据对视图有影响。

删除视图

drop view 视图名;

视图规则和限制

1、与表一样,必须唯一命名(不能出现同名视图或表名)

2、创建视图数目无限制,但要考虑复杂查询创建为视图之后的性能影响

3、视图不能添加索引,也不能有关联的触发器或者默认值

4、视图可以提高安全性,必须具有足够的访问权限

5、order by 可以用在视图中,但是如果从该视图检索数据 select 中也含有 order by ,那么该6、视图中的 order by 将被覆盖

7、视图可以和表一起使用

相关推荐
十年人间~几秒前
mysql等保数据库命令
数据库·mysql
Amagi.4 分钟前
Redis的内存淘汰策略
数据库·redis·mybatis
hai41174196210 分钟前
mysql 与postgresql 的区别(gpt4)
数据库·mysql·postgresql
知识分享小能手20 分钟前
mysql学习教程,从入门到精通,SQL 删除数据(DELETE 语句)(19)
大数据·开发语言·数据库·sql·学习·mysql·数据开发
白总Server34 分钟前
MongoDB解说
开发语言·数据库·后端·mongodb·golang·rust·php
冰镇毛衣40 分钟前
2.4 数据库表字段约束
数据库·sql·mysql
&木头人&1 小时前
oracle select字段有子查询会每次执行子查询吗
数据库·oracle
冰镇毛衣1 小时前
数据库简介
开发语言·数据库·sql·oracle
(⊙o⊙)~哦1 小时前
oracle查询历史操作记录
数据库·oracle
无休居士1 小时前
【实践】应用访问Redis突然超时怎么处理?
数据库·redis·缓存