MySQL -- 视图

MySQL – 视图

文章目录

  • MySQL -- 视图
  • 一、基本使用
  • 二、视图规则和限制


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

一、基本使用

创建视图语法:

create view 视图名 as select语句;
  • 创建视图:
    MySQL -- 视图_第1张图片

  • 在/var/lib/mysql目录下查看文件结构:
    MySQL -- 视图_第2张图片
    发现试图只有一个文件,只有表结构,其中的数据都是内存级的;

  • 修改视图:
    MySQL -- 视图_第3张图片
    查询原表数据:
    MySQL -- 视图_第4张图片
    原表数据已被修改;

  • 修改了基表,对视图有影响:
    MySQL -- 视图_第5张图片

  • 删除视图:

drop view 视图名;

二、视图规则和限制

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

你可能感兴趣的:(MySQL,mysql,数据库)