视图的主要作用是什么?

twtetgso 2003-12-05 10:22:38
是不是可以简化在编程中写SQL代码,提高一下速度?
假设在SQL中有多个条件查询,直接用视图,然后在代码中select * from 视图名 就可以了,是这样的吗?这样是不是速度快些,还是还有别的作用??
...全文
2366 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
pengdali 2003-12-05
  • 打赏
  • 举报
回复
视图是方便
zjcxc 元老 2003-12-05
  • 打赏
  • 举报
回复
SQL 视图
视图可以被看成是虚拟表或存储查询。可通过视图访问的数据不作为独特的对象存储在数据库内。数据库内存储的是 SELECT 语句。SELECT 语句的结果集构成视图所返回的虚拟表。用户可以用引用表时所使用的方法,在 Transact-SQL 语句中通过引用视图名称来使用虚拟表。使用视图可以实现下列任一或所有功能:

将用户限定在表中的特定行上。
例如,只允许雇员看见工作跟踪表内记录其工作的行。

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

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


聚合信息而非提供详细信息。
例如,显示一个列的和,或列的最大值和最小值。

zarge 2003-12-05
  • 打赏
  • 举报
回复
将用户限定在表中的特定行上。
例如,只允许雇员看见工作跟踪表内记录其工作的行。

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

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


聚合信息而非提供详细信息。
例如,显示一个列的和,或列的最大值和最小值。

shuiniu 2003-12-05
  • 打赏
  • 举报
回复
权限方面:
视图可以隐藏基表。
可以禁止所有用户访问数据库表,而要求用户只能通过视图操作数据。这种方法可以保护用户和应用程序不受某些数据库修改的影响。例如,如果可以创建一个名为"本月销售额"的视图。在每月的第一天,可以相应地修改视图的定义。如果没有这个视图,用户每月都必须重新编写查询以选择相应月份的销售额。
zarge 2003-12-05
  • 打赏
  • 举报
回复
视图
视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值集形式存在。行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成。

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

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

下图显示了在两个表上建立的视图。
Rotaxe 2003-12-05
  • 打赏
  • 举报
回复
视图只是保存在数据库中的 SELECT 查询。因此,可对查询执行的大多数操作也可在视图上执行。
速度不会快
cgsun 2003-12-05
  • 打赏
  • 举报
回复
视图的结果集通常不保存在数据库中,因此视图也称为虚拟表。视图的结果集动态包含在语句逻辑中并在运行时动态生成。有关更多信息,请参见视图解析。

复杂的查询(如决策支持系统中的查询)可引用基表中的大量行,并将大量信息聚积在相对较简洁的聚合中,如总和或平均值。SQL Server 2000 支持在执行此类复杂查询的视图上创建聚集索引。当执行 CREATE INDEX 语句时,视图 SELECT 的结果集将永久存储在数据库中。SQL 语句此后若引用该视图,响应时间将会显著缩短。对基本数据的修改将自动反映在视图中。

cloudchen 2003-12-05
  • 打赏
  • 举报
回复
如要频繁的获取n表连接后的结果,可以把连接的sql语句写成视图,然后直接select * from 视图,这样一方便,二开发快,三便于调整
victorycyz 2003-12-05
  • 打赏
  • 举报
回复
看联机帮助。
wuming68 2003-12-05
  • 打赏
  • 举报
回复
是的,创建视图后,写查询语句较方便

34,593

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧