SET NOCOUNT 的用法

Posted aaronguo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SET NOCOUNT 的用法相关的知识,希望对你有一定的参考价值。

SET NOCOUNT
使返回的结果中不包含有关受 Transact-SQL 语句影响的行数的信息。
 
语法
SET NOCOUNT  ON OFF 
 
注释
当 SET NOCOUNT 为 ON 时,不返回计数(表示受 Transact-SQL 语句影响的行数)。当 SET NOCOUNT 为 OFF 时,返回计数。
 
即使当 SET NOCOUNT 为 ON 时,也更新 @@ROWCOUNT 函数。
 
当 SET NOCOUNT 为 ON 时,将不给客户端发送存储过程中的每个语句的 DONE_IN_PROC 信息。当使用 Microsoft® SQL Server™ 提供的实用工具执行查询时,在 Transact-SQL 语句(如 SELECTINSERTUPDATE 和 DELETE)结束时将不会在查询结果中显示"nn rows affected"
 
如果存储过程中包含的一些语句并不返回许多实际的数据,则该设置由于大量减少了网络流量,因此可显著提高性能。
 
SET NOCOUNT 设置是在执行或运行时设置,而不是在分析时设置。
 
权限
SET NOCOUNT 权限默认授予所有用户。
 
示例
下例在 osql 实用工具或 SQL Server 查询分析器中执行时,可防止显示有关受影响的行数的信息。
 
USE pubs
GO
-- Display the count message.
SELECT au_lname 
FROM authors
GO
USE pubs
GO
-- SET NOCOUNT to ON and no longer display the count message.
SET NOCOUNT ON
GO
SELECT au_lname 
FROM authors
GO
-- Reset SET NOCOUNT to OFF.
SET NOCOUNT OFF
GO

以上是关于SET NOCOUNT 的用法的主要内容,如果未能解决你的问题,请参考以下文章

set nocount on

SET NOCOUNT ON/OFF

SET NOCOUNT ON 使用情况

SET NOCOUNT 的最佳地点在哪里?

sql中的SET NOCOUNT ON/OFF

触发器返回了一个结果集和/或在另一个未完成的结果集处于活动状态时以 SET NOCOUNT OFF 运行