查询和视图的比较

由于查询和视图有如此多的相似性,所以很容易忽略它们之间的差异。 本节对查询和视图做一个简单的比较。

存储 视图存储为数据库设计的一部分,而查询则不是。 当设计数据库时,可以出于下列原因将视图包括在设计中:

  • 许多用户对数据的某些子集感兴趣。   由于每个视图均存储在数据库中,视图将建立可由任何数据库用户使用的特定数据子集。

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

更新结果 对于视图和查询,结果集的更新限制是不同的。 有关更多信息,请参见 更新结果的规则

排序结果   (仅限 Microsoft SQL Server)可以对任何查询结果进行排序,但是只有当视图包括 TOP 子句时才能对视图排序。 有关 TOP 子句的更多信息,请参见 SQL Server 文档。 有关排序的更多信息,请参见 对查询结果进行排序和分组

生成查询计划 查询计划是一种内部策略,数据库服务器通过它尝试快速创建结果集。 数据库服务器可以在保存视图后立即为视图建立查询计划。 但是对于查询,数据库服务器直到查询实际运行时(也就是说,直到用户显式请求结果集时)才能建立查询计划。

参数化 可以为查询创建参数,但不能为视图创建参数。 有关参数化查询的更多信息,请参见 使用参数查询

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值