Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Van toepassing op:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
SQL Database in Microsoft Fabric
Veroorzaakt dat SQL Server stopt met het verwerken van de query nadat het opgegeven aantal rijen is teruggegeven.
Transact-SQL syntaxis-conventies
Syntaxis
SET ROWCOUNT { number | @number_var }
Arguments
aantal | @number_var
Is het aantal, een geheel getal, van rijen die verwerkt moeten worden voordat de specifieke query wordt gestopt.
Opmerkingen
Belangrijk
Het gebruik van SET ROWCOUNT heeft geen invloed op DELETE-, INSERT- en UPDATE-instructies in een toekomstige release van SQL Server. Vermijd het gebruik van SET ROWCOUNT met DELETE-, INSERT- en UPDATE-instructies in nieuw ontwikkelingswerk, en plan om applicaties aan te passen die het momenteel gebruiken. Voor een vergelijkbaar gedrag gebruik je de TOP-syntaxis. Zie TOP (Transact-SQL)voor meer informatie.
Om deze optie uit te schakelen zodat alle rijen worden teruggegeven, specificeer je SET ROWCOUNT 0.
Het instellen van de optie SET ROWCOUNT zorgt ervoor dat de meeste Transact-SQL statements stoppen met verwerken wanneer ze zijn beïnvloed door het opgegeven aantal rijen. Dit omvat ook triggers. De optie ROWCOUNT beïnvloedt dynamische cursors niet, maar beperkt wel de rijset van keyset en ongevoelige cursors. Deze optie moet met voorzichtigheid worden gebruikt.
SET ROWCOUNT overschrijft het SELECT-statement TOP-trefwoord als de rijtelling de kleinere waarde is.
De instelling van SET ROWCOUNT wordt ingesteld tijdens execute- of runtime en niet tijdens parsetijd.
Permissions
Vereist lidmaatschap van de openbare rol.
Voorbeelden
SET ROWCOUNT stopt de verwerking na het opgegeven aantal rijen. In het volgende voorbeeld merkt u op dat meer dan 500 rijen voldoen aan het criterium van Quantity minder dan 300. Na het toepassen van SET ROWCOUNT zie je echter dat niet alle rijen zijn teruggegeven.
USE AdventureWorks2022;
GO
SELECT count(*) AS Count
FROM Production.ProductInventory
WHERE Quantity < 300;
GO
Hier is het resultatenoverzicht.
Count
-----------
537
(1 row(s) affected)
Stel ROWCOUNT nu alle rijen in en 4 returneer om aan te tonen dat slechts 4 rijen worden teruggegeven.
SET ROWCOUNT 4;
SELECT *
FROM Production.ProductInventory
WHERE Quantity < 300;
GO
-- (4 row(s) affected)
Voorbeelden: Azure Synapse Analytics and Analytics Platform System (PDW)
SET ROWCOUNT stopt de verwerking na het opgegeven aantal rijen. In het volgende voorbeeld merkt op dat meer dan 20 rijen voldoen aan de criteria van AccountType = 'Assets'. Na het toepassen van SET ROWCOUNT zie je echter dat niet alle rijen zijn teruggegeven.
-- Uses AdventureWorks
SET ROWCOUNT 5;
SELECT * FROM [dbo].[DimAccount]
WHERE AccountType = 'Assets';
Om alle rijen terug te geven, zet ROWCOUNT op 0.
-- Uses AdventureWorks
SET ROWCOUNT 0;
SELECT * FROM [dbo].[DimAccount]
WHERE AccountType = 'Assets';