zoukankan      html  css  js  c++  java
  • #SQL: 视图

    视图

    视图是什么

    对于代码而言,视图就是一串SELECT语句。然而在使用上,数据表没有什么区别。

    用一般的的编程语言来理解的话,就是一个有返回值的函数。只不过它返回的是一个临时的数据表罢了。

    所以它可以随着数据表的更新而更新。

    创建视图

    使用CREATE VIEW 视图名 (列名清单) AS SELECT语句语句来创建视图。

    可以支持在一个视图的基础上创建视图,这样子的视图叫做多重试图,不过不推荐这样做,原因是影响SQL的性能。

    其中的几乎可以使用所有的SELECT语句,但是要注意的是不能够使用ORDER BY语句,原因是视图和数据表一样,都是无序的。

    视图的更新

    视图和数据表一样都支持更新操作,INSERT DELETE UPDATE,但是并非所有的视图都可以更新。

    总结出来的规律是,视图的更新源数据表应该能够同样呼应(正如试图会随着源数据表的更新而更新一样)。

    所以能够进行更新操作的视图应具有以下的条件:

    1. SELECT子句中未使用DISTINCT
    2. FROM子句中只有一张表
    3. 未使用GROUP BY子句
    4. 未使用HAVING子句

    同时由于元数据表存在着各种各样的约束条件,所以要注意(可能会更新不了)

    视图的删除

    1. 删除普通视图
      DROP VIEW 视图名
    2. 删除作为多重视图基础的视图
      DROP VIEW 视图名 CASCADE 该语句同时会删除引用该视图的多重视图
  • 相关阅读:
    2019年春季学期第三周作业
    2019年春季学期第二周作业
    7-2 求最大值及其下标 (20 分)
    7-1 查找整数 (10 分)
    人生中最重要的三位老师
    自我介绍
    学期总结
    编程作业 抓老鼠啊~亏了还是赚了?
    作业——10
    作业——9
  • 原文地址:https://www.cnblogs.com/freesfu/p/11535049.html
Copyright © 2011-2022 走看看