SET NOCOUNT (Transact-SQL)
阻止在結(jié)果集中返回可顯示受 Transact-SQL 語句或存儲過程影響的行計數(shù)的消息。
Transact-SQL 語法約定
語法
SET NOCOUNT { ON | OFF }
備注
當(dāng) SET NOCOUNT 為 ON 時,不返回計數(shù)。當(dāng) SET NOCOUNT 為 OFF 時,返回計數(shù)。
即使當(dāng) SET NOCOUNT 為 ON 時,也更新 @@ROWCOUNT 函數(shù)。
當(dāng) SET NOCOUNT 為 ON 時,將不向客戶端發(fā)送存儲過程中每個語句的 DONE_IN_PROC 消息。如果存儲過程中包含一些并不返回許多實際數(shù)據(jù)的語句,網(wǎng)絡(luò)通信流量便會大量減少,因此,將 SET NOCOUNT 設(shè)置為 ON 可顯著提高性能。
SET NOCOUNT 指定的設(shè)置是在執(zhí)行或運行時生效,而不是在分析時生效。
權(quán)限
要求具有 public 角色的成員身份。
示例
以下示例將禁止顯示受影響的行數(shù)的消息。
USE AdventureWorks;GOSET NOCOUNT OFF;GO-- Display the count message.SELECT TOP(5)LastNameFROM Person.ContactWHERE LastName LIKE 'A%';GO-- SET NOCOUNT to ON to no longer display the count message.SET NOCOUNT ON;GOSELECT TOP(5) LastNameFROM Person.ContactWHERE LastName LIKE 'A%';GO-- Reset SET NOCOUNT to OFFSET NOCOUNT OFF;GO