美文网首页
MySQL学习 5 视图

MySQL学习 5 视图

作者: 8a590e918db0 | 来源:发表于2018-11-12 22:26 被阅读0次

    1. 视图

    视图(view)可以看做一张虚拟表,是表通过某种运算得到的一个投影。

    既然视图只是表的某种查询的投影,所以主要步骤在于查询表上,查询的结果命名为视图就可以了。

    1)定义

    视图是由查询结果形成的一张虚拟表。

    2)创建

    3) 删除

    4)使用视图的好处

    - 可以简化查询

    - 可以进行权限控制 :把表的权限封闭,但是开放相应的视图权限,视图里只开放部分数据

    - 大数据分表时可以用到 :比如,表的行数超过 200 万行时,就会变慢,可以把一张的表的数据拆成 4 张表来存放,把 4 张表形成一张视图

    5)修改

    6)视图与表的关系

    视图是表的查询结果,表的数据改变了,就会影响视图的结果;

    视图增删改也会影响表,但是,视图并不是总能增删改的。

    视图某种情况下,是可以修改的。要求是, 视图的数据和表的数据 11 对应,就像函数的映射。

    表-->推出视图对应的数据

    视图-->推出表对应的数据

    对于视图,insert 还应注意,视图必须包含表中没有默认值的列

    7)视图的 algorithm

    Algorithm = merge/ temptable/ undefined

    Merge:当引用视图时,引用视图的语句与定义视图的语句合并.

    Merge意味着视图只是一个规则,语句规则,当查询视图时,把查询视图的语句(比如 where 那些)与创建时的语句 where 子句等合并,分析,形成一条 select 语句

    Temptable:当引用视图时,根据视图的创建语句建立一个临时表

    temptable 是根据创建语句瞬间创建一张临时表,然后查询视图的语句从该临时表查数据

    Undefined:未定义,自动,让系统帮你选

    相关文章

      网友评论

          本文标题:MySQL学习 5 视图

          本文链接:https://www.haomeiwen.com/subject/uzshfqtx.html