我想问下大家数据库视图的具体作用,视图 在数据库用的多吗

解决方案 »

  1.   

    当然多啦;Oracle系统本身就自带很多的视图
      

  2.   

    视图是个虚表,有自己的特点:
    视图使用方案 
    视图通常用来集中、简化和自定义每个用户对数据库的不同认识。视图可用作安全机制,方法是允许用户通过视图访问数据,而不授予用户直接访问视图基础表的权限。从(或向)Microsoft®   SQL   Server™   2000   复制数据时也可使用视图来提高性能并分区数据。 着重于特定数据 
    视图让用户能够着重于他们所感兴趣的特定数据和所负责的特定任务。不必要的数据可以不出现在视图中。这同时增强了数据的安全性,因为用户只能看到视图中所定义的数据,而不是基础表中的数据。有关出于安全考虑使用视图的更多信息,请参见使用视图作为安全机制。   简化数据操作 
    视图可以简化用户操作数据的方式。可将经常使用的联接、投影、联合查询和选择查询定义为视图,这样,用户每次对特定的数据执行进一步操作时,不必指定所有条件和限定。例如,一个用于报表目的,并执行子查询、外联接及聚合以从一组表中检索数据的复合查询,就可以创建为一个视图。视图简化了对数据的访问,因为每次生成报表时无须写或提交基础查询,而是查询视图。有关数据操作的更多信息,请参见查询基础知识。   还可以创建内嵌的用户定义函数,在逻辑上作为参数化视图运行,或作为在   WHERE   子句搜索条件中含有参数的视图运行。有关更多信息,请参见内嵌用户定义函数。 自定义数据 
    视图允许用户以不同的方式查看数据,即使他们同时使用相同的数据时也如此。这在具有不同目的和技术水平的用户共享同一个数据库时尤为有利。例如,可定义一个视图以仅检索由客户经理处理的客户数据。视图可以根据使用该视图的客户经理的登录   ID   决定检索哪些数据。 导出和导入数据 
    可使用视图将数据导出至其它应用程序。例如,可能希望使用   pubs   数据库中的   stores   和   sales   表在   Microsoft®   Excel   中分析销售数据。为此,可创建一个基于   stores   和   sales   表的视图。然后使用   bcp   实用工具导出由视图定义的数据。也可使用   bcp   实用工具或   BULK   INSERT   语句将数据从数据文件中导入某些视图,条件是可以使用   INSERT   语句在视图中插入行。有关向视图中复制数据的限制的更多信息,请参见   INSERT。有关使用   bcp   实用工具和   BULK   INSERT   语句从(或向)视图中复制数据的更多信息,请参见向(或从)视图中复制数据。   组合分区数据 
    Transact-SQL   UNION   集合运算符可在视图内使用,以将来自不同表的两个或多个查询结果组合成单一的结果集。这在用户看来是一个单独的表,称为分区视图。例如,如果一个表含有华盛顿的销售数据,另一个表含有加利福尼亚的销售数据,即可从   UNION   创建这两个表的视图。该视图代表了这两个区域的销售数据。 使用分区视图时,首先创建几个相同的表,指定一个约束以决定可在各个表中添加的数据范围。视图即使用这些基表创建。当查询该视图时,SQL   Server   自动决定查询所影响的表,并仅引用这些表。例如,如果一个查询指定只需要华盛顿州的销售数据,则   SQL   Server   只读取含有华盛顿销售数据的表,而并不访问其余的表。 分区试图可基于来自多个异类源——如远程服务器——的数据,而不仅仅局限于同一数据库中的表。例如,要将分别存储组织中不同区域数据的几台远程服务器上的数据组合起来,可以创建分布式查询,从每个数据源中检索数据,然后基于这些分布式查询创建视图。所有查询都只从包含查询所请求数据的远程服务器上读取表中的数据,其它在视图中由分布式查询引用的服务器均不被访问。 当在多个表或服务器上分割数据时,因为需扫描的数据较少,所以只访问一部分数据的查询运行得较快。如果表位于不同的服务器或一台多处理器的计算机上,同样可以对查询所涉及的表进行同时扫描,从而改进查询的性能。此外,象索引重建或表备份这样的维护任务可更快地执行。 通过使用分区视图,数据的外观象是一个单一表,且能以单一表的方式进行查询,而无须手动引用真正的基础表。 如果满足下列任一条件,则分区视图可被更新:   在带有逻辑的视图上定义支持   INSERT、UPDATE   和   DELETE   语句的   INSTEAD   OF   触发器。 
    视图和   INSERT、UPDATE   及   DELETE   语句均遵从为可更新分区视图定义的规则。有关更多信息,请参见创建分区视图。