sp_autostats (Transact-SQL)

Gäller för:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceSQL-databas i Microsoft Fabric

Visar eller ändrar alternativet för automatisk statistikuppdatering, AUTO_UPDATE_STATISTICS, för ett index, ett statistikobjekt, en tabell eller en indexerad vy.

För mer information om alternativet AUTO_UPDATE_STATISTICS , se ALTER DATABASE SET-alternativ och Statistik.

Transact-SQL syntaxkonventioner

Syntax

sp_autostats
    [ @tblname = ] N'tblname'
    [ , [ @flagc = ] 'flagc' ]
    [ , [ @indname = ] N'indname' ]
[ ; ]

Arguments

[ @tblname = ] N'tblname'

Namnet på tabellen eller den indexerade vyn för vilken alternativet ska visas AUTO_UPDATE_STATISTICS . @tblname är nvarchar(776), utan standard.

[ @flagc = ] 'flagc'

Uppdaterar eller visar AUTO_UPDATE_STATISTICS alternativet. @flagc är varchar(10) och kan vara ett av dessa värden:

Värde Description
ON On
OFF Off
Har inte angetts Visar den aktuella AUTO_UPDATE_STATISTICS inställningen

[ @indname = ] N'indname'

Namnet på statistiken som ska visas eller uppdateras AUTO_UPDATE_STATISTICS för alternativet. @indname är sysname, med standardvärdet .NULL För att visa statistiken för ett index kan du använda namnet på indexet; ett index och dess motsvarande statistikobjekt har samma namn.

Returnera kodvärden

0 (lyckades) eller 1 (fel).

Resultatuppsättning

Om @flagc anges rapporteras sp_autostats åtgärden som utförts men ingen resultatuppsättning returneras.

Om @flagc inte är specificerad, sp_autostats returnerar följande resultatuppsättning.

Kolumnnamn Datatyp Description
Index Name sysname Namnet på indexet eller statistiken.
AUTOSTATS varchar(3) Nuvarande värde för optionen AUTO_UPDATE_STATISTICS .
Last Updated datetime Datum för den senaste statistikuppdateringen.

Resultatuppsättningen för en tabell eller indexerad vy inkluderar statistik skapad för index, enkolumnsstatistik genererad med AUTO_CREATE_STATISTICS alternativet och statistik skapad med satsen CREATE STATISTICS .

Anmärkningar

Om det angivna indexet är inaktiverat, eller om den angivna tabellen har ett inaktiverat klustrat index, visas ett felmeddelande.

AUTO_UPDATE_STATISTICS är alltid AV för minnesoptimerade tabeller.

Permissions

För att ändra AUTO_UPDATE_STATISTICS alternativet behöver du medlemskap i den db_owner fasta databasrollen, eller ALTER behörighet på @tblname.

För att visa alternativet AUTO_UPDATE_STATISTICS behöver du medlemskap i den offentliga rollen.

Examples

A. Visa statusen för alla statistik i en tabell

Följande visar statusen för all statistik i tabellen Production.Product .

USE AdventureWorks2022;
GO

EXECUTE sp_autostats 'Production.Product';
GO

B. Aktivera AUTO_UPDATE_STATISTICS för all statistik i en tabell

Följande exempel möjliggör AUTO_UPDATE_STATISTICS möjligheten för alla statistik på bordet Production.Product .

USE AdventureWorks2022;
GO

EXECUTE sp_autostats 'Production.Product', 'ON';
GO

C. Inaktivera AUTO_UPDATE_STATISTICS för ett specifikt index

Följande exempel inaktiverar AUTO_UPDATE_STATISTICS alternativet för indexet AK_Product_Name i Production.Product tabellen.

USE AdventureWorks2022;
GO

EXECUTE sp_autostats 'Production.Product', 'OFF', AK_Product_Name;
GO