视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值集形式存在。行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成。
对其中所引用的基础表来说,视图的作用类似于筛选。定义视图的筛选可以来自当前或其它数据库的一个或多个表,或者其它视图。分布式查询也可用于定义使用多个异类源数据的视图。
视图是存储在数据库中的查询的SQL 语句,它主要出于两种原因:安全原因, 视图可以隐藏一些数据,如:社会保险基金表,可以用视图只显示姓名,地址,而不显示社会保险号和工资数等,另一原因是可使复杂的查询易于理解和使用。
视图:查看图形或文档的方式。
视图是从一个或多个表或视图中导出的表,其结构和数据是建立在对表的查询基础上的。和表一样,视图也是包括几个被定义的数据列和多个数据行,但就本质而言这些数据列和数据行来源于其所引用的表。
所以视图不是真实存在的基础表而是一张虚表,视图所对应的数据并不实际地以视图结构存储在数据库中,而是存储在视图所引用的表中。
视图一经定义便存储在数据库中,与其相对应的数据并没有像表那样又在数据库中再存储一份,通过视图看到的数据只是存放在基本表中的数据。对视图的操作与对表的操作一样,可以对其进行查询、修改(有一定的限制)、删除。
当对通过视图看到的数据进行修改时,相应的基本表的数据也要发生变化,同时,若基本表的数据发生变化,则这种变化也可以自动地反映到视图中。
视图有很多优点,主要表现在:
视点集中
视图集中即是使用户只关心它感兴趣的某些特定数据和他们所负责的特定任务。这样通过只允许用户看到视图中所定义的数据而不是视图引用表中的数据而提高了数据的安全性。
简化操作
视图大大简化了用户对数据的操作。因为在定义视图时,若视图本身就是一个复杂查询的结果集,这样在每一次执行相同的查询时,不必重新写这些复杂的查询语句,只要一条简单的查询视图语句即可。可见视图向用户隐藏了表与表之间的复杂的连接操作。
定制数据
视图能够实现让不同的用户以不同的方式看到不同或相同的数据集。因此,当有许多不同水平的用户共用同一数据库时,这显得极为重要。
合并分割数据
在有些情况下,由于表中数据量太大,故在表的设计时常将表进行水平分割或垂直分割,但表的结构的变化却对应用程序产生不良的影响。如果使用视图就可以重新保持原有的结构关系,从而使外模式保持不变,原有的应用程序仍可以通过视图来重载数据。
安全性
视图可以作为一种安全机制。通过视图用户只能查看和修改他们所能看到的数据。其它数据库或表既不可见也不可以访问。如果某一用户想要访问视图的结果集,必须授予其访问权限。视图所引用表的访问权限与视图权限的设置互不影响。
从用户角度来看,一个视图是从一个特定的角度来查看数据库中的数据。从数据库系统内部来看,一个视图是由SELECT语句组成的查询定义的虚拟表。从数据库系统内部来看,视图是由一张或多张表中的数据组成的,从数据库系统外部来看,视图就如同一张表一样,对表能够进行的一般操作都可以应用于试图,例如查询,插入,修改,删除操作等。
分享到:
相关推荐
数据库原理是计算机科学中的核心课程,它探讨如何有效地存储、管理和检索数据。这门课程主要关注数据库系统的基础概念、原理、技术和设计方法,尤其是关系数据库的理论和实践。以下是课程内容的详细概述: 1. **...
《数据库原理——图书管理系统实验报告》 图书管理系统是计算机信息工程学院数据库综合实验的一个重要实践环节,旨在培养学生理解和应用数据库原理的能力。系统主要分为面向学生和面向管理员两个部分,涵盖了图书...
数据库原理是信息技术领域中的核心部分,它涉及到数据的组织、存储、检索和管理。以下是对题目中涉及的一些关键知识点的详细解释: 1. **DBA(Database Administrator)**:数据库管理员,负责数据库系统的规划、...
这篇“数据库系统——王珊——期末考试要点”文档很可能是对学生复习期末考试的重要指导。 一、数据库系统基础 数据库系统由数据库、数据库管理系统(DBMS)、数据库管理员(DBA)、硬件、软件及用户组成。DBMS是...
《动态Web数据库技术——基于JSP和XML技术实现》是一本深入探讨如何使用JSP(JavaServer Pages)和XML(eXtensible Markup Language)在Web开发中构建动态数据库应用的专业书籍。书中可能涵盖了以下几个核心知识点:...
针对你提供的信息,我们可以深入探讨数据库试题的相关知识点,这将帮助你更好地理解和掌握数据库原理及应用。 第一部分:数据库基础 1. 数据库概念:数据库(Database)是一个有组织、可共享、具有尽可能小的冗余度...
这份"数据库课件——非常好的"资源显然是一份丰富的学习资料,对于正在学习数据库或准备考研的学生来说非常有价值。课件可能涵盖了数据库的基本概念、设计原理以及实际应用。 首先,数据库的核心概念包括数据、数据...
本资源包含王珊教授关于数据库系统的PPT讲义和课后答案,对于理解和掌握数据库系统的基本概念、设计原理以及实际操作技巧具有极高的价值。 首先,PPT部分通常会涵盖以下几个关键知识点: 1. **数据库系统基础**:...
《数据库原理与应用——SQL Server 2000》是一本深入探讨数据库理论与实践的教材,特别关注了Microsoft SQL Server 2000这一版本。在这个电子教案中,我们将会学习到关于数据库设计、创建、管理和优化的全方位知识。...
《数据库原理与应用——SQL Server 2000》是一门深入探讨数据库系统核心理论与实践操作的课程,尤其侧重于Microsoft SQL Server 2000这个特定版本的使用。SQL Server 2000是微软公司推出的一款企业级关系型数据库...
数据库原理及应用是信息技术领域中的核心课程之一,它主要探讨如何有效地存储、管理和检索数据,以支持各种业务和信息系统。本书详细介绍了数据库的基础概念、设计原则以及实际应用,旨在帮助读者深入理解数据库的...
【银行储蓄管理系统】是一个基于SQL Server 2000开发的数据库应用,...系统实现了从概念设计到物理设计的全过程,包括逻辑分析、视图设计、数据库表结构的建立等,最终形成一个完整的、符合实际需求的银行管理系统。
数据库原理与应用是计算机科学中的一个关键领域,它涉及到数据的组织、存储、检索和管理。本教程将重点介绍在SQL Server 2005环境下如何理解和应用这些原理。SQL Server 2005是微软公司开发的一款强大的关系型数据库...
综上所述,"数据库原理课程设计——毕业设计管理系统"涵盖了数据库管理、系统设计、编程实现、测试与部署等多个IT领域的知识,是理论与实践相结合的综合应用。通过这个项目,学生不仅可以深化对数据库原理的理解,还...
数据库原理与应用——SQL Server 2000是IT领域中的一个重要主题,它涵盖了数据库的基础概念、设计原理以及SQL Server 2000的具体应用。SQL Server 2000是由微软公司推出的一款关系型数据库管理系统(RDBMS),在企业...
数据库原理与应用是计算机科学中的核心课程之一,它涵盖了数据管理、存储、查询以及安全等多个重要领域。本教程由刘玉宝教授精心编撰,旨在为学习者提供一个全面了解和掌握数据库基础知识的平台,特别适合准备计算机...
数据库原理是信息系统设计的核心部分,涉及数据的组织、存储、管理和访问。本题涉及的知识点主要包括数据独立性、数据抽象、演绎、弱实体以及数据库设计的基本概念和操作。 1. **数据独立性**:数据独立性是数据库...