Поделиться через


Хранимая процедура sp_autostats (Transact-SQL)

Область применения: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure

Отображает или изменяет параметр автоматического обновления статистики, AUTO_UPDATE_STATISTICSдля индекса, объекта статистики, таблицы или индексированного представления.

Дополнительные сведения о параметре AUTO_UPDATE_STATISTICS см. в разделе "ПАРАМЕТРЫ ALTER DATABASE SET " и "Статистика".

Соглашения о синтаксисе Transact-SQL

Синтаксис

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

Аргументы

[ @tblname = ] N'tblname'

Имя таблицы или индексированного представления, для которого отображается AUTO_UPDATE_STATISTICS параметр. @tblname — nvarchar(776) без значения по умолчанию.

[ @flagc = ] "flagc"

Обновляет или отображает AUTO_UPDATE_STATISTICS параметр. @flagc — varchar(10) и может быть одним из следующих значений:

значение Описание
ON С
OFF Выкл.
Не указано Отображает текущий AUTO_UPDATE_STATISTICS параметр

[ @indname = ] N'indname'

Имя статистики, для которой отображается или обновляется AUTO_UPDATE_STATISTICS параметр. @indname — sysname с значением по умолчаниюNULL. Чтобы отобразить статистику для индекса, можно использовать имя индекса. Имя индекса совпадает с именем соответствующего объекта статистики.

Значения кода возврата

0 (успешно) или 1 (сбой).

Результирующий набор

Если указан @flagc , сообщает о действии, которое было выполнено, sp_autostats но не возвращает результирующий набор.

Если @flagc не указан, sp_autostats возвращает следующий результирующий набор.

Имя столбца Тип данных Description
Index Name sysname Имя индекса или статистики.
AUTOSTATS varchar(3) Текущее AUTO_UPDATE_STATISTICS значение параметра.
Last Updated datetime Дата последнего обновления статистики.

Результирующий набор для таблицы или индексированного представления включает статистику, созданную для индексов, статистику с одним столбцом, созданную с AUTO_CREATE_STATISTICS помощью параметра и статистики, созданной с помощью инструкции CREATE STATISTICS .

Замечания

Если указанный индекс отключен или указанная таблица имеет отключенный кластеризованный индекс, выводится сообщение об ошибке.

AUTO_UPDATE_STATISTICS всегда отключен для таблиц, оптимизированных для памяти.

Разрешения

Чтобы изменить AUTO_UPDATE_STATISTICS этот параметр, вам потребуется членство в предопределенных ролевой роли базы данных db_owner или ALTER разрешение на @tblname.

Чтобы отобразить AUTO_UPDATE_STATISTICS этот параметр, вам потребуется членство в общедоступной роли.

Примеры

А. Отображение состояния всей статистики по таблице

Следующий код выводит состояние всей статистики по таблице Production.Product.

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

B. Включение параметра AUTO_UPDATE_STATISTICS для всей статистики по таблице

В следующем примере включен AUTO_UPDATE_STATISTICS параметр для всех статистических данных Production.Product в таблице.

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

В. Отключение параметра AUTO_UPDATE_STATISTICS для конкретного индекса

В следующем примере параметр для AK_Product_Name индекса в Production.Product таблице отключенAUTO_UPDATE_STATISTICS.

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