Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für:SQL Server
Azure SQL-Datenbank
Verwaltete Azure SQL-Instanz
SQL-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