sp_updatestats (Transact-SQL)
Запускает инструкцию UPDATE STATISTICS для всех пользовательских и внутренних таблиц в текущей базе данных.
Соглашения о синтаксисе в Transact-SQL
Синтаксис
sp_updatestats [ [ @resample = ] 'resample']
Аргументы
- [ @resample =] 'resample'
Указывает, что процедура sp_updatestats будет использовать параметр RESAMPLE инструкции UPDATE STATISTICS. Новая статистика унаследует коэффициент выборки старой статистики. Если аргумент 'resample' не указан, процедура sp_updatestats обновляет статистику с помощью выборки, заданной по умолчанию. Этот аргумент имеет тип varchar(8) и значение по умолчанию NO.
Значения кодов возврата
0 (успешное завершение) или 1 (неуспешное завершение)
Замечания
Процедура sp_updatestats эффективно выполняет инструкцию UPDATE STATISTICS для всех пользовательских и внутренних таблиц в базе данных, указывая ключевое слово ALL. Процедура sp_updatestats выводит сообщения о ходе своего выполнения. По завершении обновления выдается отчет о том, что обновление статистики произведено для всех таблиц. Статистика по отключенным некластеризованным индексам также обновляется при помощи процедуры sp_updatestats. Процедура sp_updatestats игнорирует таблицы с отключенным кластеризованным индексом.
В SQL Server 2005 процедура sp_updatestats обновляет только статистику, требующую обновления сведений, основанных на столбце rowmodctr в представлении совместимости sys.sysindexes; таким образом предотвращаются ненужные обновления неизмененных элементов.
Для баз данных с уровнем совместимости ниже 90 при выполнении процедуры sp_updatestats меняется автоматическая настройка инструкции UPDATE STATISTICS для всех индексов и данных статистики по каждой таблице в текущей базе данных. Дополнительные сведения см. в разделе Хранимая процедура sp_autostats (Transact-SQL). Для баз данных с уровнем совместимости 90 и выше при выполнении процедуры sp_updatestats автоматическая настройка инструкции UPDATE STATISTICS сохраняется для каждого определенного индекса или статистики.
Разрешения
Необходимо быть членом фиксированной серверной роли sysadmin или владельцем базы данных (dbo).
Примеры
В следующем примере обновляется статистика для таблиц в базе данных AdventureWorks
.
USE AdventureWorks;
GO
EXEC sp_updatestats
См. также
Справочник
Хранимые процедуры ядра СУБД (Transact-SQL)
ALTER DATABASE (Transact-SQL)
CREATE INDEX (Transact-SQL)
CREATE STATISTICS (Transact-SQL)
DBCC SHOW_STATISTICS (Transact-SQL)
DROP STATISTICS (Transact-SQL)
Хранимая процедура sp_autostats (Transact-SQL)
sp_createstats (Transact-SQL)
sp_dbcmptlevel (Transact-SQL)
Системные хранимые процедуры (Transact-SQL)
UPDATE STATISTICS (Transact-SQL)