zoukankan      html  css  js  c++  java
  • MySQL——修改视图

        修改视图是指修改数据库中存在的视图,当基本表的某些字段发生变化时,可以通过修改视图来保持与基本表的一致性。

    1.  用  CREATE  OR  REPLACE   VIEW  语句修改视图

        语法格式如下:

         CREATE   [OR  REPLACE ]   [ALGORITHM={  UNDEFINED |  MERGE  |  TEMPTABLE }]
                       VIEW   view_name  [(  column_list )]
                       AS SELECT_statement

                     [ WITH  |  [ CASCADED |  LOCAL  ]  CHECK OPTION];

        可以看到,修改视图的语句和创建视图的语句完全一样。当视图存在时,修改语句对视图进行修改;当视图不存在时,创建视图。

    【例】修改视图  view_t。

    修改前:

    1. mysql> DESC view_t;
    2. +-----------------+------------+------+-----+---------+-------+
    3. | Field | Type | Null | Key | Default | Extra |
    4. +-----------------+------------+------+-----+---------+-------+
    5. | quantity | int(11) | YES | | NULL | |
    6. | price | int(11) | YES | | NULL | |
    7. | quantity *price | bigint(21) | YES | | NULL | |
    8. +-----------------+------------+------+-----+---------+-------+

    修改语句:

    1. mysql> CREATE OR REPLACE VIEW view_t AS SELECT * FROM t;
    2. Query OK, 0 rows affected (0.07 sec)

    修改后:

    1. mysql> DESC view_t;
    2. +----------+---------+------+-----+---------+-------+
    3. | Field | Type | Null | Key | Default | Extra |
    4. +----------+---------+------+-----+---------+-------+
    5. | quantity | int(11) | YES | | NULL | |
    6. | price | int(11) | YES | | NULL | |
    7. +----------+---------+------+-----+---------+-------+

    2.  用  ALTER  语句修改视图

    语法格式如下:

             ALTER   [ALGORITHM={  UNDEFINED |  MERGE  |  TEMPTABLE }]
                       VIEW   view_name  [(  column_list )]
                       AS SELECT_statement

                     [ WITH  |  [ CASCADED |  LOCAL  ]  CHECK OPTION];

    【例】用  ALTER  语句修改视图  view_t。

    修改前:

    1. mysql> DESC view_t;
    2. +----------+---------+------+-----+---------+-------+
    3. | Field | Type | Null | Key | Default | Extra |
    4. +----------+---------+------+-----+---------+-------+
    5. | quantity | int(11) | YES | | NULL | |
    6. | price | int(11) | YES | | NULL | |
    7. +----------+---------+------+-----+---------+-------+

    修改语句:

    1. mysql> ALTER VIEW view_t AS SELECT quantity FROM t;
    2. Query OK, 0 rows affected (0.04 sec)

    修改后:

    1. mysql> DESC view_t;
    2. +----------+---------+------+-----+---------+-------+
    3. | Field | Type | Null | Key | Default | Extra |
    4. +----------+---------+------+-----+---------+-------+
    5. | quantity | int(11) | YES | | NULL | |
    6. +----------+---------+------+-----+---------+-------+


    【注】参考于清华大学出版社《MySQL数据库应用案例课堂》2016年1月第1版

    原文地址:https://blog.csdn.net/qq_41573234/article/details/80343133
  • 相关阅读:
    poj1191(記憶化搜索)
    poj1088(記憶化搜索)
    二叉樹鏈表
    19_高级映射:一对多查询(使用resultMap)
    18_高级映射:一对一查询(使用resultMap)
    17_高级映射:一对一查询(使用resultType)
    15_CXF和Spring开发手机号查询网站
    14_CXF发布REST服务
    13_CXF和Spring整合发布服务
    12_CXF入门
  • 原文地址:https://www.cnblogs.com/jpfss/p/11004700.html
Copyright © 2011-2022 走看看