Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Platí na:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Sklad v Microsoft Fabric
SQL databáze v Microsoft Fabric
Ovládá, zda je po výsledné sadě vrácena zpráva ukazující počet řádků ovlivněných Transact-SQL příkazem nebo uloženou procedurou. Tato zpráva je další množina výsledků.
Syntaxe
SET NOCOUNT { ON | OFF }
Poznámky
Když SET NOCOUNT je ON, počet se nevrátí. Když SET NOCOUNT je OFF, počet se vrátí.
Funkce @@ROWCOUNT se aktualizuje i tehdy, když SET NOCOUNT je .ON
SET NOCOUNT ON zabraňuje odesílání DONEINPROC zpráv klientovi pro každý příkaz v uložené procedurě. U uložených procedur, které obsahují několik příkazů, jež nevrací mnoho skutečných dat, nebo u procedur obsahujících Transact-SQL smyček, může nastavení SET NOCOUNT na ON výrazně zvýšit výkon, protože síťový provoz je výrazně snížen.
Nastavení dané v platí SET NOCOUNT při spuštění nebo běhu a nikoli při parse.
Pro zobrazení aktuálního nastavení tohoto nastavení spusťte následující dotaz.
DECLARE @NOCOUNT VARCHAR(3) = 'OFF';
IF ((512 & @@OPTIONS) = 512)
SET @NOCOUNT = 'ON';
SELECT @NOCOUNT AS NOCOUNT;
Povolení
Vyžaduje členství ve veřejné roli .
Examples
Následující příklad zabraňuje zobrazení zprávy o počtu dotčených řádků. V následujícím příkladu je vrácena (5 rows affected) klientům pouze z prvního SELECT příkazu.
USE AdventureWorks2022;
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