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


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

Отображает или изменяет параметр автоматического обновления статистики UPDATE STATISTICS для определенных индекса и статистики или для всех индексов и статистик указанной таблицы или индексированного представления в текущей базе данных.

ms188775.note(ru-ru,SQL.90).gifПримечание.
В контексте этой хранимой процедуры термин «индекс» относится к статистике таблицы или представления.

Значок ссылки на разделСоглашения о синтаксисе в Transact-SQL

Синтаксис

sp_autostats [ @tblname = ] 'table_name' 
    [ , [ @flagc = ] 'stats_flag' ] 
    [ , [ @indname = ] 'index_name' ]

Аргументы

  • [ @tblname= ] 'table_name'
    Имя таблицы или представления, для которых должен отображаться параметр UPDATE STATISTICS. Аргумент table_name имеет тип nvarchar(776) и не имеет значения по умолчанию. Если аргумент index_name указан, сервер SQL Server 2005 меняет значение параметра UPDATE STATISTICS для этого индекса.
  • [ @flagc= ] 'stats_flag'
    Указывает параметр UPDATE STATISTICS для таблицы, представления или индекса:

    ON = обновление включено;

    OFF = обновление отключено.

    Аргумент stats_flag имеет тип varchar(10) и значение по умолчанию NULL.

  • [ @indname= ] 'index_name'
    Имя индекса, для которого необходимо включить или отключить автоматическое обновление параметра UPDATE STATISTICS. Аргумент index_name имеет тип sysname и значение по умолчанию NULL.

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

0 (успешное завершение) или 1 (неуспешное завершение)

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

Если аргумент stats_flag указан, эта хранимая процедура сообщает о действии, которое было выполнено, но не возвращает результирующего набора.

Если аргумент stats_flag не указан, процедура sp_autostats возвращает следующий результирующий набор:

Имя столбца Тип данных Описание

Index Name

varchar(60)

Имя индекса.

AUTOSTATS

varchar(3)

Текущее значение параметра UPDATE STATISTICS: OFF или ON.

Last Updated

datetime

Дата последнего обновления статистики.

Замечания

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

Разрешения

Для изменения параметра UPDATE STATISTICS необходимо членство в фиксированной роли базы данных db_owner или разрешение ALTER на таблицу table_name. Для отображения значения параметра UPDATE STATISTICS необходимо членство в роли public.

Примеры

A. Отображение текущего состояния всех индексов таблицы

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

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

Б. Включение автоматического сбора статистики для всех индексов таблицы

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

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

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

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

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

См. также

Справочник

Хранимые процедуры ядра СУБД (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)
Системные хранимые процедуры (Transact-SQL)
UPDATE STATISTICS (Transact-SQL)

Справка и поддержка

Получение помощи по SQL Server 2005