MySQL中视图

  • 什么是视图?视图的作用是什么?

    视图(view)是一种虚拟存在的表,是一个逻辑表,它本身是不包含数据的。作为一个select语句保存在数据字典中的。通过视图,可以展现基表(用来创建视图的表叫做基表base table)的部分数据,说白了视图的数据就是来自于基表

  • 视图的优点:

    1. 简单:使用视图的用户完全不需要关心后面对应的表的结构、关联条件和筛选条件,对用户来说已经是过滤好的复合条件的结果集
    2. 安全:使用视图的用户只能访问他们被允许查询的结果集,对表的权限管理并不能限制到某个行某个列,但是通过视图就可以简单的实现
    3. 数据独立:一旦视图的结构确定了,可以屏蔽表结构变化对用户的影响,源表增加列对视图没有影响;源表修改列名,则可以通过修改视图来解决,不会造成对访问者的影响
    4. 不占用空间:视图是逻辑上的表,不占用内存空间

    总而言之,使用视图的大部分情况是为了保障数据安全性,提高查询效率。

  • 视图的创建以及修改

    创建语法:
    	create view <视图名称> as select 语句;
    修改语法:
    	alter view <视图名称> as select 语句;
    删除语法:
    	drop view <视图名称>;
    
  • 视图的缺点

    1. 性能差:sql server必须把视图查询转化成对基本表的查询,如果这个视图是由一个复杂的多表查询所定义,那么,即使是视图的一个简单查询,sql server也要把它变成一个复杂的结合体,需要花费一定的时间
    2. 修改限制:当用户试图修改视图的某些信息时,数据库必须把它转化为对基本表的某些信息的修改,对于简单的视图来说,这是很方便的,但是,对于比较复杂的视图,可能是不可修改的。

MySQL中视图

上一篇:scrapy爬虫框架调用百度地图api数据存入数据库


下一篇:47数据库 的操作