数据库视图的作用

数据库视图的作用,第1张

我也是刚刚接触这方面的东西!也想问问视图到底是做什么用的!呵呵!

视图

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

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

通过视图进行查询没有任何限制,通过它们进行数据修改时的限制也很少。

权限方面:

视图可以隐藏基表。

可以禁止所有用户访问数据库表,而要求用户只能通过视图 *** 作数据。这种方法可以保护用户和应用程序不受某些数据库修改的影响。例如,如果可以创建一个名为 "本月销售额 "的视图。在每月的第一天,可以相应地修改视图的定义。如果没有这个视图,用户每月都必须重新编写查询以选择相应月份的销售额。

将用户限定在表中的特定行上。

例如,只允许雇员看见工作跟踪表内记录其工作的行。

将用户限定在特定列上。

例如,对于那些不负责处理工资单的雇员,只允许他们看见雇员表中的姓名列、办公室列、工作电话列和部门列,而不能看见任何包含工资信息或个人信息的列。

将多个表中的列联接起来,使它们看起来象一个表。

聚合信息而非提供详细信息。

例如,显示一个列的和,或列的最大值和最小值。

我不知道你这三种是根据什么定义的,我学的时候是五种

1、单源表视图

视图的数据可以只取自一个基本表的部分行、列,这样的视图行列与基本表行列对应。这样定义的视图一般可以进行查询和更改数据 *** 作。

2、多源表视图

视图的数据可以来自多个表中,这样定义的视图一般只用于查询,不用于修改数据。

3、在已有视图上定义的新视图

可以在视图上再建立视图,这时作为数据源的视图必须是已经建立好的。

4、带表达式的视图

在定义基本表时,为减少数据库中的冗余数据,表中只存放基本数据,由基本数据经过各种计算派生出的数据一般是不存储的。但由于视图中的数据并不实际存储,所以定义视图时可以根据需要设置一些派生属性列,在这些派生属性列中保存经过计算的值。这些派生属性由于在基本表中并不实际存在,因此,也称它们为虚拟列。包含虚拟列的视图也称为带表达式的视图。

5、含分组统计信息的视图

含分组统计信息的视图是指定义视图的查询语句中含有GROUP BY子句,这样的视图只能用于查询,不能用于修改数据。

这些是我考数据库工程师时学的,如果你想例子我这有。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10019504.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存