SET SET STATISTICS XML (Transact-SQL)

Gilt für:SQL ServerAzure SQL-DatenbankVerwaltete Azure SQL-InstanzSQL-Datenbank in Microsoft Fabric

Bewirkt, dass Microsoft SQL Server Transact-SQL-Anweisungen ausführt und detaillierte Informationen zur Ausführung der Anweisungen in Form eines wohlgeformten XML-Dokuments generiert.

Transact-SQL-Syntaxkonventionen

Syntax

  
SET STATISTICS XML { ON | OFF }  

Hinweise

Die Einstellung von SETSET STATISTICS XML wird zur Ausführungs- oder Laufzeit gesetzt und nicht zur Parsezeit.

Wenn SETSET STATISTICS XML ON ist, liefert SQL Server nach Ausführung für jede Anweisung Ausführungsinformationen. Nachdem diese Option auf ON festgelegt wurde, werden Informationen zu allen nachfolgenden Transact-SQL-Anweisungen zurückgegeben, bis die Option auf OFF festgelegt wird. Beachten Sie, dass SETSET STATISTICS XML nicht die einzige Aussage in einem Batch sein muss.

SET SET STATISTICS XML Ausgaben als nvarchar(max) für Anwendungen wie das sqlcmd-Dienstprogramm zurückzugeben, wobei die XML-Ausgabe anschließend von anderen Tools zur Darstellung und Verarbeitung der Abfrageplaninformationen verwendet wird.

SET SET STATISTICS XML gibt Informationen als Satz von XML-Dokumenten zurück. Jede Anweisung nach der SETSET STATISTICS XML ON-Anweisung wird in der Ausgabe durch ein einzelnes Dokument reflektiert. Jedes Dokument enthält den Text der Anweisung, gefolgt von den Informationen zu den Ausführungsschritten. Die Ausgabe zeigt Laufzeitinformationen an, wie z. B. Kosten, zugegriffene Indizes und Typen der ausgeführten Vorgänge, Joinreihenfolge, Anzahl von Ausführungen eines physischen Vorgangs sowie die Anzahl der von einem physischen Operator erstellten Zeilen usw.

Das Dokument, das das XML-Schema für das von ausgegebene SETSET STATISTICS XML XML enthält, wird während der Einrichtung in ein lokales Verzeichnis auf dem Computer kopiert, auf dem Microsoft SQL Server installiert ist. Es wird auf dem Laufwerk mit den SQL Server-Installationsdateien gespeichert unter:

\Microsoft SQL Server\100\Tools\Binn\schemas\sqlserver\2004\07\showplan\showplanxml.xsd

Das Showplanschema kann auf dieser Website gefunden werden.

SET SET STATISTICS PROFILE und SETSET STATISTICS XML sind Gegenstücke zueinander. SET STATISTICS PROFILE erstellt Textausgaben, während SET STATISTICS XML XML-Ausgaben erstellt. In zukünftigen Versionen von SQL Server werden neue Abfrageausführungsplaninformationen nur über die Anweisung SETSET STATISTICS XML angezeigt, nicht über die AnweisungSETSET STATISTICS PROFILE.

Hinweis

Wenn in SQL Server Management Studio "Actual Execution Plan einbeziehen" ausgewählt wurde, erzeugt diese SET Option keine XML-Showplan-Ausgabe. Löschen Sie vor der Nutzung dieser Option den Button SET.

Berechtigungen

Um die Ausgabe zu nutzen SETSET STATISTICS XML und anzuzeigen, müssen Benutzer folgende Berechtigungen besitzen:

  • Die Berechtigungen für die Ausführung der Transact-SQL-Anweisungen.

  • Die SHOWPLAN-Berechtigung für alle Datenbanken mit Objekten, auf die von den Transact-SQL-Anweisungen verwiesen wird.

Für Transact-SQL-Anweisungen, die keine Ergebnismengen erzeugen STATISTICS XML , sind nur die entsprechenden Berechtigungen zur Ausführung der Transact-SQL-Anweisungen erforderlich. Für Transact-SQL Anweisungen, die Ergebnissätze erzeugen STATISTICS XML , müssen sowohl die Transact-SQL-Ausführungsberechtigung als auch die SHOWPLAN-Berechtigung erfolgreich sein, sonst wird die Ausführung der Transact-SQL-Anweisung abgebrochen und es wird keine Showplan-Information generiert.

Beispiele

Die beiden folgenden Anweisungen nutzen die SETSET STATISTICS XML Einstellungen, um zu zeigen, wie SQL Server die Verwendung von Indizes in Abfragen analysiert und optimiert. In der ersten Abfrage wird der Vergleichsoperator Gleich (=) in der WHERE-Klausel auf eine indizierte Spalte angewendet. In der zweiten Abfrage wird der LIKE-Operator in der WHERE-Klausel verwendet. Deshalb muss SQL Server eine Überprüfung des gruppierten Index ausführen und die Daten finden, die die Bedingung in der WHERE-Klausel erfüllen. Die Werte in den Attributen EstimateRows und EstimatedTotalSubtreeCost sind bei der ersten indizierten Abfrage kleiner, was auf eine deutlich schnellere Verarbeitung und die Verwendung weniger Ressourcen als bei der nicht indizierten Abfrage hinweist.

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  

Weitere Informationen

SET SHOWPLAN_XML (Transact-SQL)
SQLCMD-Hilfsprogramm