首页 > 代码库 > SQL —— 视图

SQL —— 视图

原文:SQL —— 视图

1. 为什么使用视图

    1) 提高数据的安全型,不同权限的用户可以查看数据的不同。

    2) 符合用户日常业务逻辑

 

2. 什么是视图

    视图是一种查看数据库中一个或多个表中的数据的方法。

    视图是一种虚拟表。 通常是作为来自一个或多个表中的行或列的子集创建的,当然他也可以包含全部的行和列。

    视图并不是数据库中存储的数据值的集合,它的行和列来自查询中引用的表。在执行时,他直接显示来自表中的数据。

 

3. 视图的作用

    筛选表中的行

    防止未经许可的用户访问敏感数据

    将多个物理数据表抽象为一个逻辑数据表

 

4. 如何创建视图

   方法一: 使用SSMS,选中数据库, 选择“视图”选项并右击,在弹出的快捷菜单中选择“新建视图项”, 添加药学查询的表, 选择希望查看到的列,保存视图。

   方法二: 使用语句创建,语法:

       create view view_name

              as 

                   <select 语句>

 

5. 视图语法整理:

   1) 创建视图  

   create view view_name

              as 

                   <select 语句>

     2) 修改视图

   alter view view_name

              as 

                   <select 语句>

       3)删除视图

     drop view view_name

 

        4)修改视图名称

        exec  sp_rename  view_oldname   view_newname

 

         5) 查看视图

         select  列名  from view_name

 

6.  注意事项

      每个视图中可以使用多个表

      与查询相似,一个视图可以嵌套另一个视图,但最好不要超过3层。

      视图定义中  select 语句不能包括一下内容

            order by 字句,除非在select 语句的选择列中也有一个top字句

            into 关键字

            引用临时表或表变量

 

7. 视图的优缺点

     优点: 简单、 安全、逻辑数据独立

     缺点: 性能,修改限制

           如果视图中存在函数或涉及复杂的多表查询,那么用户在查询视图的过程中会花费一定的时间。

           对于简单的视图可以使用update 语句更新,如果对于复杂的视图可能就不能使用了。删除亦是如此。所以对于视图的用法最好只停留到查询上面。

SQL —— 视图