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 語句(如
SELECT
、
INSERT
、
UPDATE
和
DELETE
)結束時將不會在查詢結果中顯示
"nn rows affected"
。
若是存儲過程當中包含的一些語句並不返回許多實際的數據,則該設置因爲大量減小了網絡流量,所以可顯著提升性能。
SET
NOCOUNT 設置是在執行或運行時設置,而不是在分析時設置。
權限
SET
NOCOUNT 權限默認授予全部用戶。
示例
下例在 osql 實用工具或 SQL Server 查詢分析器中執行時,可防止顯示有關受影響的行數的信息。
USE pubs
GO
SELECT
au_lname
FROM
authors
GO
USE pubs
GO
SET
NOCOUNT
ON
GO
SELECT
au_lname
FROM
authors
GO
SET
NOCOUNT
OFF
GO