当前位置:首页 » 操作系统 » 数据库视图的定义

数据库视图的定义

发布时间: 2022-07-24 14:15:04

㈠ 什么是视图

您好。
视图是指计算机数据库中的视图,是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值集形式存在。行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成。
从用户角度来看,一个视图是从一个特定的角度来查看数据库中的数据。从数据库系统内部来看,一个视图是由SELECT语句组成的查询定义的虚拟表。从数据库系统内部来看,视图是由一张或多张表中的数据组成的,从数据库系统外部来看,视图就如同一张表一样。
视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图的作用类似于筛选。定义视图的筛选可以来自当前或其它数据库的一个或多个表,或者其它视图。分布式查询也可用于定义使用多个异类源数据的视图。
视图是存储在数据库中的查询的sql 语句,它主要出于两种原因:安全原因, 视图可以隐藏一些数据,如:社会保险基金表,可以用视图只显示姓名,地址,而不显示社会保险号和工资数等,另一原因是可使复杂的查询易于理解和使用。
希望能够帮到您,谢谢,望采纳。

㈡ 什么叫数据库视图

数据视图是数据库里的一张虚表,是不存在的一张表。和表一样,视图包括数据列和数据行,这些数据列和行来源于所查询的表(此表称作视图的基表).用户通过视图来浏览自己感兴趣的部分数据,而数据的物理存放位置仍然在视图所张引用的基表中。

㈢ 在sql数据库里的视图是什么意思,怎么理解

视图为原始数据库数据的一种变换,是查看表中数据的另外一种方式。可以将视图看成是一个移动的窗口,通过它可以看到感兴趣的数据。视图为从一个或多个实际表中获得的,这些表的数据存放在数据库中。那些用于产生视图的表叫做该视图的基表。一个视图也可以从另一个视图中产生。

视图的定义存在数据库中,与此定义相关的数据并没有再存一份于数据库中。通过视图看到的数据存放在基表中。



(3)数据库视图的定义扩展阅读

视图有很多优点,主要表现在:

1、视点集中

使用户只关心它感兴趣的某些特定数据和他们所负责的特定任务。这样通过只允许用户看到视图中所定义的数据而不是视图引用表中的数据而提高了数据的安全性。

2、简化操作

视图大大简化了用户对数据的操作。因为在定义视图时,若视图本身就是一个复杂查询的结果集,这样在每一次执行相同的查询时,不必重新写这些复杂的查询语句,只要一条简单的查询视图语句即可。可见视图向用户隐藏了表与表之间的复杂的连接操作。

3、定制数据

视图能够实现让不同的用户以不同的方式看到不同或相同的数据集。因此,当有许多不同水平的用户共用同一数据库时,这显得极为重要。

4、合并分割数据

在有些情况下,由于表中数据量太大,故在表的设计时常将表进行水平分割或垂直分割,但表的结构的变化却对应用程序产生不良的影响。如果使用视图就可以重新保持原有的结构关系,从而使外模式保持不变,原有的应用程序仍可以通过视图来重载数据。

5、安全性

视图可以作为一种安全机制。通过视图用户只能查看和修改他们所能看到的数据。其它数据库或表既不可见也不可以访问。如果某一用户想要访问视图的结果集,必须授予其访问权限。视图所引用表的访问权限与视图权限的设置互不影响。

㈣ 数据库“视图中”是什么意思

视图(View)是从一个或多个表(或视图)导出的表。视图与表(有时为与视图区别,也称表为基本表--Base Table)不同,视图是一个虚表,即视图所对应的数据不进行实际存储,数据库中只存储视图的定义,在对视图的数据进行操作时,系统根据视图的定义去操作与视图相关联的基本表。

  1. 视图作用比较广的,首先视图可以将不同表中的数据通过关联实现多表数据输出。

  2. 比如说,有一个类型表 uType,有字段tId,tName,有个产品表 uProct,有字段pId,pName,tId,此时你可以通过建立一张视图vProct将产品表和产品类型一起输出
    SELECT p.pId AS 产品编号,p.pName AS 产品名称,t.tId AS 产品类型编号,t.tId AS 产品类型编号 。

  3. FROM uProct AS p INNER JOIN uType AS t ON p.tId = t.tId;

  4. 这样就可以在程序里使用

  5. SELECT * FROM vProct 来做产品资料的查询了

  6. 它可以减少我们编码的工作量,也方便维护。

㈤ 关系数据库中视图的含义与作用

视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值集形式存在。 视图如同一张表一样,对表能够进行的一般操作都可以应用于视图,例如查询,插入,修改,删除操作等。简言之,视图和表的用法操作基本相同,不同的是视图并不存储真实的数据。
比如我们创建了一个视图create view v1 as select * from a ,那么我们可以对视图进行查询,select * from v1,v1中并没有任何数据,在执行select * from v1的时候相当于调用了生成视图的语句
select * from a,此时select * from v1等价于select * from a
视图是存储在数据库中的查询的SQL 语句,它主要出于两种原因:安全原因, 视图可以隐藏一些数据,如:社会保险基金表,可以用视图只显示姓名,地址,而不显示社会保险号和工资数等,另一原因是可使复杂的查询易于理解和使用。
视图一经定义便存储在数据库中,与其相对应的数据并没有像表那样又在数据库中再存储一份,通过视图看到的数据只是存放在基本表中的数据。对视图的操作与对表的操作一样,可以对其进行查询、修改(有一定的限制)、删除。
当对通过视图看到的数据进行修改时,相应的基本表的数据也要发生变化,同时,若基本表的数据发生变化,则这种变化也可以自动地反映到视图中。

视图的作用
* 简单性。看到的就是需要的。视图不仅可以简化用户对数据的理解,也可以简化他们的操作。那些被经常使用的查询可以被定义为视图,从而使得用户不必为以后的操作每次指定全部的条件。
* 安全性。通过视图用户只能查询和修改他们所能见到的数据。但不能授权到数据库特定行和特定的列上。通过视图,用户可以被限制在数据的不同子集上:
使用权限可被限制在另一视图的一个子集上,或是一些视图和基表合并后的子集上。
* 逻辑数据独立性。视图可帮助用户屏蔽真实表结构变化带来的影响。

㈥ 数据库视图是什么,有什么用,怎么用

你首先要理解什么是查询结果集
查询时实现数据库操作的最主要方法,尽管从查询结果集看到的数据集合与打开的数据表看到的数据集合一样,但实质是完全不同的:
*数据表是数据库中存放数据的实体对象,在数据表中看到的是数据的静态物理集合,是实际的数据源表。
*查询只是针对数据源的操作命令(程序),在查询结果中看到的是数据的动态逻辑集合,是执行命令对数据表操作的结果,十一哥虚拟的数据表。
视图的概念
我们经常使用SELECT语句,尤其是比较复杂的查询语句,如果每次使用都要重复地输入代码是很麻烦的,如果将该语句保存为一个对象,每次使用时不需要输入代码,只给出对象的名字就能方便地使用,简化查询操作。这个对象就是视图。
视图实际上就是给查询语句指定一个名字,将查询语句定义为一个独立的对象保存。
既然视图是由SELECT查询语句构成的,那么使用视图就可以直接得到SELECT语句的查询结果集,所以我们就可以这样为视图下一个定义:
视图:就是基于一个或多个数据表的动态数据集合,是一个逻辑上的虚拟数据表。
另一方面,视图又具有更强的功能:使用SELECT语句只能在结果集——动态逻辑虚拟表中查看数据,而使用视图不但可以查看数据,而且可以作为SQL语句的数据源,并且可以直接在视图中对数据表进行编辑修改删除——更新数据表中的数据。

㈦ 数据库中的视图有什么用,我们为什么要用视图

用来进行数据展示和分析。使用视图可以定制用户数据,聚焦特定的数据。

视图是原始数据库数据的一种变换,是查看表中数据的另外一种方式。可以将视图看成是一个移动的窗口,通过它可以看到感兴趣的数据。

视图是从一个或多个实际表中获得的,这些表的数据存放在数据库中。那些用于产生视图的表叫做该视图的基表。一个视图也可以从另一个视图中产生。

视图的定义存在数据库中,与此定义相关的数据并没有再存一份于数据库中。通过视图看到的数据存放在基表中。

视图可以在以下几个方面使程序与数据独立:

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

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

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

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

㈧ 什么是视图定义

视图是从一个或多个表或视图中导出的表,其结构和数据是建立在对表的查询基础上的。和表一样,视图也是包括几个被定义的数据列和多个数据行,但就本质而言这些数据列和数据行来源于其所引用的表。

所以视图不是真实存在的基础表而是一张虚表,视图所对应的数据并不实际地以视图结构存储在数据库中,而是存储在视图所引用的表中。
视图一经定义便存储在数据库中,与其相对应的数据并没有像表那样又在数据库中再存储一份,通过视图看到的数据只是存放在基本表中的数据。对视图的操作与对表的操作一样,可以对其进行查询、修改(有一定的限制)、删除。
当对通过视图看到的数据进行修改时,相应的基本表的数据也要发生变化,同时,若基本表的数据发生变化,则这种变化也可以自动地反映到视图中。
视图有很多优点,主要表现在:
�6�1视点集中
�6�1简化操作
�6�1定制数据
�6�1合并分割数据
�6�1安全性

如果你要创建一个视图,为其指定一个名称和一个查询即可。Microsoft SQL Server只保存视图的元数据(metadata),用于描述这个对象,以及它所包含的列、安全、依赖等。当你查询视图时,无论是获取数据还是修改数据,查询处理器(query processor)都会用视图定义代替视图引用。也就是说,查询处理器展开视图定义并生成访问基对象(underlying objects)的执行计划。

视图在数据库中发挥着重要的作用。视图的重要用途之一便是被用作一个抽象装置(abstraction mechanism)。例如,在适当时利用视图你可以很容易地为基础数据提供或多或少的规范化映像(normalized picture),这样就不用更改实际数据的规范化(normalization)。通过应用模块化的方法(逐步解决复杂问题),可以简化解决方案。可以利用视图访问经过筛选和处理的数据,而不是直接对基表(base table)进行操作(让视图的架构和基对象的架构相同),可以把视图作为一个安全层(security layer)(在一定程度上)。

如果在视图上创建索引,它在提高性能方面也发挥着重要作用。在视图上创建聚集索引(clustered index)会让它的数据真正地保存在磁盘上,而不再是虚拟的数据。我会在本章专门用一节介绍索引视图。现在,我们先来关注没有索引的视图,它们通常没有特定的性能影响,包括消极的或积极的。
与其他的表表达式(如派生表、公用表表达式,或内联表值用户定义函数[inline table-valued user-defined function,UDF])一样,视图的查询定义必须满足3个条件:

不能在查询定义中使用ORDER BY,除非定义中包含TOP或FOR XML说明符。
所有的结果列必须有名称。
所有结果列的名称必须是唯一的。

定义视图的查询中在没有TOP或FOR XML说明符的情况下不能包含ORDER BY子句,这是因为视图被认为表示一个表。表是一个逻辑实体,它的行没有顺序,不同于游标,游标是一个物理对象,它可以对行排序。表中的所有列必须有名称,且名称必须是唯一的,这一点勿庸置疑。为视图的目标列指定名称有两种方法,可以在视图名称后面的圆括号内指定,也可以用每个表达式后面的别名作为列名称。

来看一个示例,运行下面的代码创建VcustsWithOrders视图。

SET NOCOUNT ON;USE Northwind;GOIF OBJECT_ID(‘dbo.VcustsWithOrders’) IS NOT NULLDROP VIEW dbo.VcustsWithOrders;GOCREATE VIEW dbo.VcustsWithOrdersASSELECT CustomerID, CompanyName, ContactName, ContactTitle,Address, City, Region, PostalCode, Country, Phone, FaxFROM Customers AS CWHERE EXISTS(SELECT * FROM dbo.Orders AS OWHERE O.CustomerID = C.CustomerID);GO

热点内容
值班发布源码 发布:2024-10-25 19:23:50 浏览:369
php实现注册登陆 发布:2024-10-25 19:22:56 浏览:545
android开发库 发布:2024-10-25 18:50:28 浏览:231
优酷路由宝存储 发布:2024-10-25 18:41:37 浏览:934
pythoncmdb 发布:2024-10-25 18:41:29 浏览:200
安卓触控屏不灵怎么办 发布:2024-10-25 17:31:22 浏览:872
中信银行信用卡激活后密码是多少 发布:2024-10-25 17:28:31 浏览:506
cocos2d30编译 发布:2024-10-25 17:20:51 浏览:994
app直播平台源码 发布:2024-10-25 17:19:57 浏览:224
asp文件上传带进度条 发布:2024-10-25 17:19:54 浏览:658