【SQL遗补】之 SET NOCOUNT (Transact-SQL)

SET NOCOUNT (Transact-SQL)

阻止在结果集中返回可显示受 Transact-SQL 语句或存储过程影响的行计数的消息。

 

语法:

SET NOCOUNT { ON | OFF } 

注释:

当 SET NOCOUNT 为 ON 时,不返回计数。

当 SET NOCOUNT 为 OFF 时,返回计数。

即使当 SET NOCOUNT 为 ON 时,也更新 @@ROWCOUNT 函数。

 

当 SET NOCOUNT 为 ON 时,将不向客户端发送存储过程中每个语句的 DONE_IN_PROC 消息。

如果存储过程中包含一些并不返回许多实际数据的语句,或者如果过程包含 Transact-SQL 循环,网络通信流量便会大量减少,

因此,将 SET NOCOUNT 设置为 ON 可显著提高性能。

SET NOCOUNT 指定的设置是在执行或运行时生效,而不是在分析时生效。

 

权限:

要求具有 public 角色的成员身份。

示例:

以下示例将禁止显示受影响的行数的消息。

代码
   
     
USE AdventureWorks2008R2;
GO
SET NOCOUNT OFF ;
GO
-- Display the count message.
SELECT TOP ( 5 )LastName
FROM Person.Person
WHERE LastName LIKE ' A% ' ;
GO
-- SET NOCOUNT to ON to no longer display the count message.
SET NOCOUNT ON ;
GO
SELECT TOP ( 5 ) LastName
FROM Person.Person
WHERE LastName LIKE ' A% ' ;
GO
-- Reset SET NOCOUNT to OFF
SET NOCOUNT OFF ;
GO

你可能感兴趣的:(count)