Freigeben über


SET STATISTICS IO (Transact-SQL)

Bewirkt, dass SQL Server Informationen zum Umfang der Datenträgeraktivitäten anzeigt, die durch Transact-SQL-Anweisungen generiert werden.

Themenlink (Symbol) Transact-SQL-Syntaxkonventionen

Syntax

SET STATISTICS IO { ON | OFF }

Hinweise

Wenn STATISTICS IO auf ON festgelegt ist, werden statistische Informationen angezeigt. Bei OFF werden die Informationen nicht angezeigt.

Wenn diese Option auf ON festgelegt wird, geben alle nachfolgenden Transact-SQL-Anweisungen so lange statistische Informationen zurück, bis die Option auf OFF festgelegt wird.

Die folgende Tabelle enthält eine Auflistung der Ausgabeelemente sowie entsprechende Beschreibungen.

Ausgabeelement

Bedeutung

Tabelle

Der Name der Tabelle.

Scananzahl

Die Anzahl von Suchen/Scans, die nach Erreichen der Blattebene in beliebiger Richtung gestartet wurden, um alle Werte zum Erstellen des abschließende Datasets für die Ausgabe abzurufen.

  • Die Scananzahl beträgt 0, wenn der verwendete Index ein eindeutiger Index oder ein gruppierter Index für eine Primärschlüsselspalte ist und Sie nur einen Wert suchen. Beispiel: WHERE Primary_Key_Column = <value>.

  • Die Scananzahl beträgt 1, wenn Sie anhand eines nicht eindeutigen gruppierten Indexes, der für eine Nicht-Primärschlüsselspalte definiert ist, nach einem Wert suchen. Auf diese Weise wird nach doppelten Werten eines Schlüsselwerts gesucht, der als Suchwert verwendet wird. Beispiel: WHERE Clustered_Index_Key_Column = <value>.

  • Die Scananzahl ist N, wenn N der Anzahl unterschiedlicher Suchen/Scans entspricht, die auf der Blattebene nach links oder rechts gestartet wurden, nachdem ein Schlüsselwert anhand des Indexschlüssels ermittelt wurde.

Logische Lesevorgänge

Anzahl der aus dem Datencache gelesenen Seiten

physische Lesevorgänge

Anzahl der vom Datenträger gelesenen Seiten

Read-Ahead-Lesevorgänge

Anzahl der Seiten, die für die Abfrage im Cache platziert wurden

Logische LOB-Lesevorgänge

Anzahl der Seiten des Typs text, ntext, image oder eines Typs für umfangreiche Werte (varchar(max), nvarchar(max), varbinary(max)), die aus dem Datencache gelesen wurden.

physische LOB-Lesevorgänge

Anzahl der Seiten des Typs text, ntext, image oder eines Typs für umfangreiche Werte, die vom Datenträger gelesen wurden.

Read-Ahead-LOB-Lesevorgänge

Anzahl der Seiten des Typs text, ntext, image oder eines Typs für umfangreiche Daten, die für die Abfrage im Cache platziert wurden.

Die Einstellung von SET STATISTICS IO wird zur Ausführungszeit und nicht zur Analysezeit festgelegt.

HinweisHinweis

Wenn Transact-SQL-Anweisungen LOB-Spalten abrufen, kann es vorkommen, dass bestimmte LOB-Abrufvorgänge die LOB-Struktur mehrere Male durchlaufen müssen. Dadurch meldet SET STATISTICS IO möglicherweise mehr logische Lesevorgänge als erwartet.

Berechtigungen

Für die Verwendung von SET STATISTICS IO müssen die Benutzer über die geeigneten Berechtigungen zum Ausführen der Transact-SQL-Anweisung verfügen. Die SHOWPLAN-Berechtigung ist nicht erforderlich.

Beispiele

In diesem Beispiel wird gezeigt, wie viele logische und physische Lesevorgänge SQL Server während der Verarbeitung der Anweisungen verwendet.

USE AdventureWorks2012;
GO       
SET STATISTICS IO ON;
GO
SELECT * 
FROM Production.ProductCostHistory
WHERE StandardCost < 500.00;
GO
SET STATISTICS IO OFF;
GO

Im Folgenden wird das Resultset aufgeführt:

Table 'ProductCostHistory'. Scan count 1, logical reads 5, physical 
reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, 
lob read-ahead reads 0.

Siehe auch

Verweis

SET-Anweisungen (Transact-SQL)

SET SHOWPLAN_ALL (Transact-SQL)

SET STATISTICS TIME (Transact-SQL)