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
SQL-database in Microsoft Fabric
Zorgt ervoor dat Microsoft SQL Server Transact-SQL statements uitvoert en gedetailleerde informatie genereert over hoe de statements zijn uitgevoerd in de vorm van een goed gedefinieerd XML-document.
Transact-SQL syntaxis-conventies
Syntaxis
SET STATISTICS XML { ON | OFF }
Opmerkingen
De instelling van SETSET STATISTICS XML wordt ingesteld bij execute- of runtime en niet bij parsetijd.
Wanneer SETSET STATISTICS XML AAN is, geeft SQL Server na uitvoering uitvoeringsinformatie terug voor elke instructie. Nadat deze optie AAN is gezet, wordt informatie over alle volgende Transact-SQL-instructies teruggegeven totdat de optie op UIT staat. Let op dat niet SETSET STATISTICS XML de enige uitspraak in een batch hoeft te zijn.
SET SET STATISTICS XML levert output terug als nvarchar(max) voor applicaties, zoals het sqlcmd-hulpprogramma , waarbij de XML-uitvoer vervolgens door andere tools wordt gebruikt om de informatie van het queryplan weer te geven en te verwerken.
SET SET STATISTICS XML levert informatie terug als een set XML-documenten. Elke instructie na de SETSET STATISTICS XML ON-instructie wordt in de output weerspiegeld door één enkel document. Elk document bevat de tekst van de verklaring, gevolgd door de details van de uitvoeringsstappen. De output toont runtime-informatie zoals de kosten, geraadpleegde indexen en soorten uitgevoerde bewerkingen, join-volgorde, het aantal keren dat een fysieke bewerking wordt uitgevoerd, het aantal rijen dat elke fysieke operator produceerde, en meer.
Het document met het XML-schema voor de XML die door wordt uitgevoerdSETSET STATISTICS XML, wordt tijdens de installatie gekopieerd naar een lokale map op de computer waarop Microsoft SQL Server is geïnstalleerd. Het is te vinden op de schijf met de SQL Server-installatiebestanden, op:
\Microsoft SQL Server\100\Tools\Binn\schemas\sqlserver\2004\07\showplan\showplanxml.xsd
Het Showplan-schema is ook te vinden op deze website.
SET SET STATISTICS PROFILE en SETSET STATISTICS XML zijn elkaars tegenhangers. De eerste produceert tekstuele output; de laatste produceert XML-uitvoer. In toekomstige versies van SQL Server zal de informatie van het nieuwe query-uitvoeringsplan alleen via de SETSET STATISTICS XML instructie worden weergegeven, niet via de instructieSETSET STATISTICS PROFILE.
Opmerking
Als Include Actual Execution Plan is geselecteerd in SQL Server Management Studio, levert deze SET optie geen XML Showplan-output op. Maak de knop 'Include Actual Execution Plan' open voordat je deze SET optie gebruikt.
Permissions
Om de output te gebruiken SETSET STATISTICS XML en te bekijken, moeten gebruikers de volgende rechten hebben:
Passende permissies om de Transact-SQL-statements uit te voeren.
SHOWPLAN-toestemming op alle databases die objecten bevatten die worden aangeduid door de Transact-SQL-instructies.
Voor Transact-SQL statements die geen resultaatsets produceren STATISTICS XML , zijn alleen de juiste rechten vereist om de Transact-SQL statements uit te voeren. Voor Transact-SQL statements die wel resultaatsets opleveren STATISTICS XML , moet gecontroleerd worden op zowel de Transact-SQL-instructie-uitvoeringstoestemming als de SHOWPLAN-toestemming, anders wordt de uitvoering van Transact-SQL statement afgebroken en wordt er geen Showplan-informatie gegenereerd.
Voorbeelden
De twee volgende statements gebruiken de SETSET STATISTICS XML instellingen om te laten zien hoe SQL Server indexen analyseert en optimaliseert in queries. De eerste query gebruikt de Equals (=) vergelijkingsoperator in de WHERE-clausule op een geïndexeerde kolom. De tweede query maakt gebruik van de OPERATOR LIKE in de WHERE-component. Dit dwingt SQL Server om een geclusterde indexscan te gebruiken om de gegevens te vinden die voldoen aan de WHERE-clausule-conditie. De waarden in de attributen EstimateRows en EstimatedTotalSubtreeCost zijn kleiner voor de eerste geïndexeerde query, wat aangeeft dat deze veel sneller werd verwerkt en minder middelen gebruikte dan de niet-geïndexeerde query.
USE AdventureWorks2022;
GO
SET STATISTICS XML ON;
GO
-- First query.
SELECT BusinessEntityID
FROM HumanResources.Employee
WHERE NationalIDNumber = '509647174';
GO
-- Second query.
SELECT BusinessEntityID, JobTitle
FROM HumanResources.Employee
WHERE JobTitle LIKE 'Production%';
GO
SET STATISTICS XML OFF;
GO