sp_autostats (Transact-SQL)
Zeigt die automatische UPDATE STATISTICS-Einstellung für einen bestimmten Index und eine bestimmte Statistik oder für alle Indizes und Statistiken einer angegebenen Tabelle oder indizierten Sicht in der aktuellen Datenbank an oder ändert sie.
Hinweis: |
---|
Im Kontext dieser gespeicherten Prozedur bezieht sich der Begriff Index auf die Statistik für die Tabelle oder Sicht. |
Transact-SQL-Syntaxkonventionen
Syntax
sp_autostats [ @tblname = ] 'table_name'
[ , [ @flagc = ] 'stats_flag' ]
[ , [ @indname = ] 'index_name' ]
Argumente
[ @tblname= ] 'table_name'
Gibt den Namen der Tabelle oder Sicht an, für die die automatische UPDATE STATISTICS-Einstellung angezeigt werden soll. table_name ist vom Datentyp nvarchar(776) und hat keinen Standardwert. Wenn index_name angegeben ist, wird die UPDATE STATISTICS-Einstellung für diesen Index in SQL Server 2005 automatisch geändert.
[ @flagc= ] 'stats_flag'
Gibt die automatische UPDATE STATISTICS-Einstellung für die Tabelle, die Sicht oder den Index an:
ON = aktiviert
OFF = deaktiviert
stats_flag ist vom Datentyp varchar(10); der Standardwert ist NULL.
[ @indname= ] 'index_name'
Gibt den Namen des Indexes an, für den die automatische UPDATE STATISTICS-Einstellung aktiviert oder deaktiviert werden soll. index_name ist vom Datentyp sysname; der Standardwert ist NULL.
Rückgabecodewerte
0 (Erfolg) oder 1 (Fehler)
Resultsets
Wenn stats_flag angegeben ist, meldet diese Prozedur die ausgeführte Aktion. Es wird jedoch kein Resultset zurückgegeben.
Wenn stats_flag nicht angegeben ist, gibt sp_autostats das folgende Resultset zurück.
Spaltenname | Datentyp | Beschreibung |
---|---|---|
Index Name |
varchar(60) |
Der Name des Indexes. |
AUTOSTATS |
varchar(3) |
Aktuelle Einstellung für die automatische Ausführung von UPDATE STATISTICS: OFF oder ON. |
Last Updated |
datetime |
Das Datum, an dem die Statistik zuletzt aktualisiert wurde. |
Hinweise
Wenn der angegebene Index deaktiviert ist oder die angegebene Tabelle einen deaktivierten gruppierten Index enthält, wird eine Fehlermeldung angezeigt.
Berechtigungen
Zum Ändern der automatischen UPDATE STATISTICS-Einstellung ist eine Mitgliedschaft in der festen Datenbankrolle db_owner oder eine ALTER-Berechtigung für table_name erforderlich. Zum Anzeigen der automatischen UPDATE STATISTICS-Einstellung ist eine Mitgliedschaft in der Rolle public erforderlich.
Beispiele
A. Anzeigen des aktuellen Status aller Indizes einer Tabelle
Das folgende Beispiel zeigt den aktuellen Statistikstatus aller Indizes der Product
-Tabelle an.
USE AdventureWorks;
GO
EXEC sp_autostats 'Production.Product';
B. Aktivieren der automatischen Statistik für alle Indizes einer Tabelle
Das folgende Beispiel aktiviert die automatische Statistikeinstellung für alle Indizes der Product
-Tabelle.
USE AdventureWorks;
GO
EXEC sp_autostats 'Production.Product', 'ON';
C. Deaktivieren der automatischen Statistik für einen bestimmten Index
Das folgende Beispiel deaktiviert die automatische Statistikeinstellung für den AK_Product_Name
-Index der Product
-Tabelle.
USE AdventureWorks;
GO
EXEC sp_autostats 'Production.Product', 'OFF', AK_Product_Name;
Siehe auch
Verweis
Gespeicherte Prozeduren für das Datenbankmodul (Transact-SQL)
ALTER DATABASE (Transact-SQL)
CREATE INDEX (Transact-SQL)
CREATE STATISTICS (Transact-SQL)
DBCC SHOW_STATISTICS (Transact-SQL)
DROP STATISTICS (Transact-SQL)
sp_createstats (Transact-SQL)
Gespeicherte Systemprozeduren (Transact-SQL)
UPDATE STATISTICS (Transact-SQL)