zoukankan      html  css  js  c++  java
  • mysql视图

    含义:理解成一张虚拟的表,用法基本和表一样,多用于查询,视图的增删改会影响原始表的数据

    创建视图的语法:
    create [or replace] view view_name
    As select_statement
    [with|cascaded|local|check option]
    
    修改视图的语法:
    alter view view_name
    As select_statement
    [with|cascaded|local|check option]
    
    删除视图的语法:
    用户可以一次删除一个或者多个视图,前提是必须有该视图的drop权限。
    drop view [if exists] view_name,view_name …[restrict|cascade]

    视图的增删改查

    1、查看视图的数据 ★
    
    SELECT * FROM my_v4;
    SELECT * FROM my_v1 WHERE last_name='Partners';
    
    2、插入视图的数据,会影响原始表数据
    INSERT INTO my_v4(last_name,department_id) VALUES('虚竹',90);
    
    3、修改视图的数据,会影响原始表数据
    
    UPDATE my_v4 SET last_name ='梦姑' WHERE last_name='虚竹';
    
    4、删除视图的数据
    DELETE FROM my_v4;

    视图逻辑的更新

    #方式一:
    CREATE OR REPLACE VIEW test_v7
    AS
    SELECT last_name FROM employees
    WHERE employee_id>100;
    
    #方式二:
    ALTER VIEW test_v7
    AS
    SELECT employee_id FROM employees;
    
    SELECT * FROM test_v7;

    视图的可更新性和视图中查询的定义有关系,以下类型的视图是不能更新的。

    • 包含以下关键字的sql语句:分组函数、distinct、group by、having、union或者union all
    • 常量视图
    • Select中包含子查询
    • join
    • from一个不能更新的视图
    • where子句的子查询引用了from子句中的表

    视图和表的对比

            关键字        是否占用物理空间            使用
    视图    view        占用较小,只保存sql逻辑       一般用于查询
    表     table        保存实际的数据               增删改查
  • 相关阅读:
    HTML精确定位:scrollLeft,scrollWidth,clientWidth,offsetWidth之完全详解
    CSS——display和float
    jQuery对象与dom对象相互转换
    jQuery选择器
    CSS样式表继承详解
    CSS position relative absolute fixed
    HTML——选择器
    2018-03-30
    IDEA检出SVN项目
    IDEA快捷键
  • 原文地址:https://www.cnblogs.com/konglxblog/p/14729827.html
Copyright © 2011-2022 走看看