Freigeben über


sp_autostats (Transact-SQL)

Zeigt die AUTO_UPDATE_STATISTICS-Option zum automatischen Statistikupdate für einen Index, ein Statistikobjekt, eine Tabelle oder eine indizierte Sicht an oder ändert sie.

Weitere Informationen zur AUTO_UPDATE_STATISTICS-Option finden Sie unter ALTER DATABASE SET-Optionen (Transact-SQL) und Statistik.

Themenlink (Symbol) Transact-SQL-Syntaxkonventionen

Syntax

sp_autostats [ @tblname = ] 'table_or_indexed_view_name' 
    [ , [ @flagc = ] 'stats_value' ] 
    [ , [ @indname = ] 'statistics_name' ]

Argumente

  • [ @tblname= ] 'table_or_indexed_view_name'
    Der Name der Tabelle oder indizierten Sicht, für die die AUTO_UPDATE_STATISTICS-Option angezeigt werden soll. table_or_indexed_view_name ist vom Datentyp nvarchar(776) und hat keinen Standardwert.

  • [ @flagc= ] 'stats_value'
    Aktualisiert die AUTO_UPDATE_STATISTICS-Option auf einen dieser Werte:

    ON = ON

    OFF = OFF

    Wenn stats_flag nicht angegeben wird, wird die aktuelle AUTO_UPDATE_STATISTICS-Einstellung angezeigt. stats_value ist vom Datentyp varchar(10). Der Standardwert ist NULL.

  • [ @indname= ] 'statistics_name'
    Der Name der Statistik, für die die AUTO_UPDATE_STATISTICS-Option angezeigt oder aktualisiert werden soll. Um die Statistik für einen Index anzuzeigen, können Sie den Namen des Indexes verwenden. Ein Index und das dazugehörige Statistikobjekt verfügen über den gleichen Namen.

    statistics_name ist vom Datentyp sysname und hat den Standardwert NULL.

Rückgabecodewerte

0 (Erfolg) oder 1 (Fehler)

Resultsets

Wenn stats_flag angegeben ist, erstellt sp_autostats einen Bericht über 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

Indexname

varchar(60)

Name des Indexes oder der Statistik.

AUTOSTATS

varchar(3)

Aktueller Wert für die AUTO_UPDATE_STATISTICS-Option.

Zuletzt aktualisiert

datetime

Das Datum des letzten Statistikupdates.

Das Resultset für eine Tabelle oder indizierte Sicht umfasst Statistiken, die für Indizes, Statistiken für einzelne Spalten, die mit der AUTO_CREATE_STATISTICS-Option generiert wurden, und mit der CREATE STATISTICS-Anweisung generierte Statistiken erstellt wurden.

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 AUTO_UPDATE_STATISTICS-Option ist eine Mitgliedschaft in der festen Datenbankrolle db_owner oder eine ALTER-Berechtigung für table_name erforderlich. Zum Anzeigen der AUTO_UPDATE_STATISTICS-Option ist eine Mitgliedschaft in der public-Rolle erforderlich.

Beispiele

A.Anzeigen des Status aller Statistiken für eine Tabelle

Das folgende Beispiel zeigt den Status aller Statistiken für die Product-Tabelle an.

USE AdventureWorks2012;
GO
EXEC sp_autostats 'Production.Product';
GO

B.Aktivieren von AUTO_UPDATE_STATISTICS für alle Statistiken zu einer Tabelle

Im folgenden Beispiel wird die AUTO_UPDATE_STATISTICS-Option für alle Statistiken zur Product-Tabelle aktiviert.

USE AdventureWorks2012;
GO
EXEC sp_autostats 'Production.Product', 'ON';
GO

C.Deaktivieren von AUTO_UPDATE_STATISTICS für einen bestimmten Index

Im folgenden Beispiel wird die AUTO_UPDATE_STATISTICS-Option für den AK_Product_Name-Index der Product-Tabelle deaktiviert.

USE AdventureWorks2012;
GO
EXEC sp_autostats 'Production.Product', 'OFF', AK_Product_Name;
GO

Siehe auch

Verweis

ALTER DATABASE SET-Optionen (Transact-SQL)

Gespeicherte Prozeduren für das Datenbankmodul (Transact-SQL)

CREATE STATISTICS (Transact-SQL)

DBCC SHOW_STATISTICS (Transact-SQL)

DROP STATISTICS (Transact-SQL)

sp_createstats (Transact-SQL)

UPDATE STATISTICS (Transact-SQL)

Gespeicherte Systemprozeduren (Transact-SQL)

Konzepte

Statistik