`
jsczxy2
  • 浏览: 1277442 次
  • 性别: Icon_minigender_1
  • 来自: 常州
文章分类
社区版块
存档分类
最新评论

视图的作用

阅读更多

视图有以下几方面的功能:
1
。简化应用程序。
视图做为数据库中的一种实体,实际上存在的只是它的脚本,而它的内容并不真正的单独存在一份。一般,可以对复杂的应用程序从功能角度进行分析,将可以与其它的应用程序共用的那一部分,分离出来。对这部分功能,视具体情况可做成不同的数据库实体(如过程),有些是可以做成视图的。这样,上层的应用程序就可以从视图中取数据了。
还有,可以把对远地数据库的访问封装在视图中,使之对上层应用程序透明。
2
。可以对 UNION 后的记录集排序。
直接对以下语句的结果排序,是不可能的(至少我不知道怎么直接排序)。
select a.id id from a
union
select b.id id from b;
所以把以上语句作成视图后,就可以了。设视图名为A_B:
select id from A_B order by id;
3
。可以实现一定的权限控制。
可以根据需要,对表中的一部分内容做一个视图,以供一定的角色使用。可以对表中的一部分记录做一个视图(纵向),也可以对一个表中的一部分字段做一个视图(横向),或二者兼而有之。
暂时想了这么多,希望大家多多指正与补充。
--------------------------------------------------------------------

  
视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值集形式存在。行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成。

      
对其中所引用的基础表来说,视图的作用类似于筛选。定义视图的筛选可以来自当前或其它数据库的一个或多个表,或者其它视图。分布式查询也可用于定义使用多个异类源数据的视图。如果有几台不同的服务器分别存储组织中不同地区的数据,而您需要将这些服务器上相似结构的数据组合起来,这种方式就很有用。

一、视图的作用

       *
简单性。看到的就是需要的。视图不仅可以简化用户对数据的理解,也可以简化他们的操作。那些被经常使用的查询可以被定义为视图,从而使得用户不必为以后的操作每次指定全部的条件。

       *
安全性。通过视图用户只能查询和修改他们所能见到的数据。数据库中的其它数据则既看不见也取不到。数据库授权命令可以使每个用户对数据库的检索限制到特定的数据库对象上,但不能授权到数据库特定行和特定的列上。通过视图,用户可以被限制在数据的不同子集上:

      
使用权限可被限制在基表的行的子集上。
      
使用权限可被限制在基表的列的子集上。
      
使用权限可被限制在基表的行和列的子集上。
<!--[if !supportLineBreakNewLine]--> 使用权限可被限制在多个基表的连接所限定的行上。
      
使用权限可被限制在基表中的数据的统计汇总上。
      
使用权限可被限制在另一视图的一个子集上,或是一些视图和基表合并后的子集上。

       *
逻辑数据独立性。视图可帮助用户屏蔽真实表结构变化带来的影响。

二、视图的优点

       (1)
视图能简化用户的操作
       (2)
视图机制可以使用户以不同的方式查询同一数据
       (3)
视图对数据库重构提供了一定程度的逻辑独立性
       (4)
视图可以对机密的数据提供安全保护

三、视图的安全性

      
视图的安全性可以防止未授权用户查看特定的行或列,是用户只能看到表中特定行的方法如下:

       1
在表中增加一个标志用户名的列;

       2
建立视图,是用户只能看到标有自己用户名的行;

       3
把视图授权给其他用户。

四、逻辑数据独立性

      
视图可以使应用程序和数据库表在一定程度上独立。如果没有视图,应用一定是建立在表上的。有了视图之后,程序可以建立在视图之上,从而程序与数据库表被视图分割开来。视图可以在以下几个方面使程序与数据独立:

       1
如果应用建立在数据库表上,当数据库表发生变化时,可以在表上建立视图,通过视图屏蔽表的变化,从而应用程序可以不动。

       2
如果应用建立在数据库表上,当应用发生变化时,可以在表上建立视图,通过视图屏蔽应用的变化,从而使数据库表不动。

       3
如果应用建立在视图上,当数据库表发生变化时,可以在表上修改视图,通过视图屏蔽表的变化,从而应用程序可以不动。

       4
如果应用建立在视图上,当应用发生变化时,可以在表上修改视图,通过视图屏蔽应用的变化,从而数据库可以不动。

五、视图的书写格式

<!--[if !supportLineBreakNewLine]-->

Create VIEW <视图名>[(列名组)]
AS <
子查询>

Drop VIEW <
索引名>

注意:视图可以和基本表一样被查询,但是利用视图进行数据增,删,改操作,会受到一定的限制。

1)由两个以上的基本表导出的视图
2)视图的字段来自字段表达式函数
3)视图定义中有嵌套查询
4)在一个不允许更新的视图上定义的视图

 

<!--[endif]--> <!--[endif]-->

分享到:
评论

相关推荐

    Word快速了解五种常见视图作用.docx

    Word 五种常见视图作用详解 微软 Word 是最广泛使用的文字处理软件之一,它提供了多种视图方式,帮助用户更好地编辑和阅读文档。在本文中,我们将详细介绍 Word 五种常见视图作用,包括页面视图、阅读版式视图、Web...

    oracle系统视图作用大全

    Oracle系统视图是Oracle数据库数据字典的重要组成部分,它们提供了关于数据库结构、状态以及活动的详细信息。这些视图对于数据库管理员(DBA)来说至关重要,因为它们可以帮助监控和管理数据库,解决性能问题,以及...

    TIA博途网络组态时,拓扑视图要不要连接,有什么作用?.docx

    网络视图和拓扑视图是两个不同的但相互关联的概念,它们在工程组态和网络诊断中起到至关重要的作用。 首先,网络视图是TIA博途中用于配置和管理网络通信的核心组件。在这个视图中,用户可以设定设备间的通信参数,...

    sql server视图的作用本篇文章.doc

    视图的主要作用包括: 1. **增强可读性**:视图允许我们将复杂的查询逻辑封装起来,使得查询语句更加简洁易读。例如,如果一个查询涉及多张表的联接和复杂的WHERE条件,创建视图后,只需简单地从视图中选择所需字段...

    9.1.2 视图的作用,视图可以更改么?.md

    9.1.2 视图的作用,视图可以更改么?

    视图的作用视图的作用

    视图在数据库中的作用至关重要,它是数据库管理系统提供的一种数据抽象机制,主要体现在以下几个方面: 1. 数据安全性:视图能够限制用户对原始数据的访问权限。通过创建视图,管理员可以选择性地展示数据,使用户...

    MySQL--视图的定义

    #### 视图的作用 - **简化操作**:视图可以将复杂的查询封装起来,简化用户的操作。 - **安全性增强**:通过定义视图,可以限制用户对敏感数据的访问,例如,不包括基表中的某些敏感字段(如手机号码)。 - **数据...

    Word2021中5种视图模式的作用.docx

    Word2021中的5种视图模式的作用 在Word2021中,用户可以选择多种视图模式来满足不同的需求和应用场景。这些视图模式包括页面视图、阅读版式视图、Web版式视图、大纲视图和草稿视图五种。每种视图模式都有其特点和...

    spring-webflow-reference

    - **操纵视图作用域对象**:修改视图作用域内的对象属性。 #### 总结 Spring Web Flow为开发者提供了一个强大而灵活的工具来管理复杂的业务流程。通过上述知识点的介绍,我们可以了解到其基本概念、核心组件及其...

    数据库中视图操作.doc。这是个图文并茂的教程有作用的

    视图的主要作用包括简化复杂的查询、隐藏数据复杂性、提供安全性以及实现数据的逻辑独立性。视图的修改通常受到限制,因为它们是只读的,除非在创建时指定了`WITH CHECK OPTION`,这样可以允许更新,但必须符合原始...

    oracle实现带参数视图

    在数据库设计与管理过程中,视图(View)作为一种虚拟表,对于简化查询、增强数据安全性和提供数据抽象具有重要作用。然而,标准的视图定义是静态的,无法根据不同的输入参数返回不同的结果集。Oracle 数据库提供了...

    国家开放大学 形考答案 mysql 实验训练4:视图和索引的构建与使用

    实验目的是基于已有的汽车用品网上商城数据库 Shopping,理解视图和索引的概念和作用,练习视图的基本操作,包括视图的建立、视图的查询、视图的更新、视图的删除,体会视图带来的方便;练习索引的创建和删除,对比...

    sql server视图详解

    ### 视图的作用 1. **简化查询**:视图可以隐藏复杂的表结构,用户只需操作视图,无需了解底层数据源的细节。 2. **安全机制**:通过视图,可以限制用户对原始表的访问权限,只允许他们看到和修改特定的数据。 3. **...

    计算机视觉中的多视图几何

    ### 计算机视觉中的多视图几何 #### 引言 在计算机视觉领域中,多视图几何是一项核心技术和理论基础,它涉及到如何从不同视角的图像中恢复三维场景的信息...随着技术的进步,未来多视图几何将在更多领域发挥重要作用。

    UML九种视图总结

    UML九种视图的作用是帮助开发者更好地理解和设计软件系统,提供了一种通用的语言和模型来描述软件系统的各个方面。每种视图都有其特定的目的和应用场景。 在UML类图中,有四种关系:泛化关系、依赖关系、关联关系和...

    sql视图复制工具

    这就是"sql视图复制工具"的作用所在。 视图复制工具的主要功能是自动化地将源数据库中的视图结构和定义安全、高效地移植到目标数据库。这个过程通常包括以下步骤: 1. **分析视图定义**:工具首先读取源数据库中...

    MySQL数据库:使用NAVICAT工具创建和管理视图.pptx

    ### 视图的作用 视图的主要好处在于: - **简化复杂查询**:视图可以封装复杂的SQL查询,使得用户只需要查询视图即可获取所需数据。 - **数据安全**:通过视图,可以限制用户对原始表的访问权限,只允许他们查看和...

    往上拖拉底部视图底部视图会滑动出现并覆盖主视图.rar

    `CoordinatorLayout`是Google推出的用于创建复杂布局的框架,它可以处理子视图之间的相互作用。底部视图可以是一个`BottomSheet`,而`BottomSheetBehavior`可以控制它的滑动行为。在Java或Kotlin代码中,需要设置`...

    ORACLE9I物化视图

    ### ORACLE9I 物化视图 #### 执行概览 随着数据库技术的发展,无论是数据仓库、数据集市还是在线事务处理...随着数据量的增长和技术的进步,物化视图将继续发挥其重要作用,成为现代数据库系统不可或缺的一部分。

    SQL_Server视图和索引

    ### SQL Server 视图与索引详解 #### 一、视图的概念与操作 ##### 1.1 视图的基本概念 视图是基于SQL语句的结果集的一种虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。但是,...

Global site tag (gtag.js) - Google Analytics