• 【mysql学习笔记26】视图


    创建视图

    CREATE VIEW view_name[(col1,col2,…)] AS SELECT语句 [WITH [CASCADED|LOCAL] CHECK OPTION];

    查询视图

    查看创建语句

    show create view 视图名;

    查询

    select * from 视图名;

    修改视图

    方式一

    CREATE OR REPLACE VIEW view_name[(col1,col2,…)] AS SELECT语句 [WITH [CASCADED|LOCAL] CHECK OPTION];

    方式二

    ALTER VIEW 视图名(列明列表) AS SELECT语句 [WITH [CASCADED|LOCAL] CHECK OPTION];

    删除视图

    DROP VIEW [IF EXISTS] 视图名;

    插入

    对视图进行插入会插入原表中

    检查选项

    当使用WITH CHECK OPTION子句创建视图时,MySQL会通过视图检查正在更改的每个行,例如插入,更新,删除,以使其符合视图的定义。MySQL允许基于另一个视图创建视图,它还会检查依赖视图中的规则以保持一致性。为了确定检查的范围,mysql提供了两个选项:CASCADED和LOCAL,默认值为CASCADED。
    无with check option时,是不需要满足当前视图的条件的。并且对于底部视图(即该视图针对的视图),先判断底部视图是否有with check option语句,有的话,按照其规则(local或者cascaded)处理,没有的话则不需要满足底部视图的条件。
    with local check option时,需要满足当前视图的条件。对于底部视图,也是先看是否有指定的with check option语句,有的话对应处理,无则不需要满足底部视图的条件。
    with cascaded check option(cascaded可以省略)时,需要满足当前视图的条件。并且对于所有底部视图的条件,也需要一并满足,哪怕底部视图没有定义with check option语句。

    更新

    要使得视图可更新,那么视图的列必须和原表的列一一对应

  • 相关阅读:
    解读HarmonyOS 应用与服务生态
    《Vue插件》瀑布流插件vue-masonry的使用与踩坑记录
    生产者、消费者问题
    第四届全国中医药院校大学生程序设计竞赛 : 二进制码(Python)
    AF_UNIX和127.0.0.1(AF_INET)回环地址写数据速度对比(二)
    Linux的简单使用
    C++的类型转换
    IDEA的模板(Templates)
    理解递归与循环
    【0150】PostgreSQL常用命令总结表
  • 原文地址:https://blog.csdn.net/qq_31618549/article/details/125501982