zoukankan      html  css  js  c++  java
  • SQLServer —— 视图

    一、视图的概念

    1. 是存储在服务器端的一个查询块,是一张虚拟表。
    2. 表示一张表的部分数据或多张表的综合数据。
    3. 其结构和数据是建立在对表的查询基础上。
    4. 视图的使用,跟对普通的表的查询使用完全一样。

    二、视图中不存放数据

    数据存放在视图所引用的原始表中。

    三、表视图的多样性

    一个或多个原始表,根据不同用户的不同需求,可以创建不同的视图。

    四、视图的用途

    1. 筛选表中的行。
    2. 防止未经许可的用户访问敏感数据。
    3. 降低数据库的复杂程度。
    4. 将多个物理数据库抽象成为一个逻辑数据库。

    五、实际运用

    5.1、基于 ssms 创建使用视图

    有以下三张表,分别是学员信息表、学员班级表、学员成绩表,如下:

     我们可以基于这三张表,新建一个视图:

    (1)、右键该数据库视图选项,点新建视图

    (2)、逐一将三张表进行添加

    (3)、需要哪个字段,点复选框进行勾选

     

    (4)、勾选完毕,保存,并起一个适合的名字

    (5)、至此,我们可以刷新视图,可以看到我们刚刚创建的视图了。

    (6)、新建一个查询,测试一下。

     5.2、使用 T - SQL语句创建视图

    CREATE VIEW view_StuInfo
        AS
        <SELECT 语句>

    5.3、使用 T - SQL语句删除视图

    -- 需要使用一堆单引号括起
    IF EXISTS (SELECT * FROM sysobjects WHERE name = view_StuInfo) DROP VIEW view_StuInfo

    5.4、使用 T - SQL语句查看视图

    SELECT * FROM view_StuInfo

    5.5、完整的例子

    六、视图的注意事项

    1、视图中可以使用多个表。

    2、一个视图可以嵌套另一个视图(尽量少套用)

    3、视图定义中的SELECT语句不能包括下列内容:

    • ORDER BY 字句,除非在SELECT语句的选择列表中也有一个TOP字句。
    • INTO关键字。
    • 引用临时表或表变量。
  • 相关阅读:
    是否可能两个ETH私钥对应同一个地址
    使用 neon-wallet-db + neon-js + NEO-cli /rpc 搭建轻钱包服务端
    从源码看 angular/material2 中 dialog模块 的实现
    个人从源码理解JIT模式下angular编译AppModule的过程
    个人从源码理解angular项目在JIT模式下的启动过程
    使用angular的HttpClient搭配rxjs
    把angular项目整合到.net mvc中
    小程序开发整理
    ABC: Always Be Coding
    postgresql的psql常用命令-4
  • 原文地址:https://www.cnblogs.com/xulinjun/p/12032933.html
Copyright © 2011-2022 走看看