sp_updatestats (Transact-SQL)

Executa UPDATE STATISTICS em todas as tabelas internas e definidas pelo usuário no banco de dados atual.

Para obter mais informações sobre a instrução UPDATE STATISTICS, consulte UPDATE STATISTICS (Transact-SQL). Para obter mais informações sobre estatísticas, consulte Usando estatísticas para melhorar o desempenho de consultas.

Ícone de vínculo de tópicoConvenções de sintaxe Transact-SQL

Sintaxe

        sp_updatestats [ [ @resample = ] 'resample']

Valores de código de retorno

0 (êxito) ou 1 (falha)

Argumentos

  • [ @resample =] 'resample'
    Especifica que sp_updatestats usará a opção RESAMPLE da instrução UPDATE STATISTICS. Se 'resample' não for especificado, sp_updatestats atualizará as estatísticas usando a amostragem padrão. resample é varchar(8) com um valor padrão NO.

Comentários

O sp_updatestats executa UPDATE STATISTICS, especificando a palavra-chave ALL, em todas as tabelas internas e definidas pelo usuário no banco de dados. sp_updatestats exibe mensagens que indicam seu progresso. Quando a atualização é concluída, ela informa que as estatísticas foram atualizadas em todas as tabelas.

sp_updatestats atualiza estatísticas em índices não clusterizados desabilitados e não atualiza estatísticas em índices clusterizados desabilitados.

sp_updatestats atualiza somente as estatísticas que exigem atualização com base nas informações de rowmodctr na exibição de catálogo sys.sysindexes, evitando, assim, atualizações desnecessárias de estatísticas nas linhas não alteradas.

sp_updatestats pode disparar uma recompilação de procedimentos armazenados ou outro código compilado. No entanto, sp_updatestats talvez não provoque uma recompilação, se apenas um plano de consulta for possível para as tabelas referenciadas e os índices dessas tabelas. Uma recompilação será desnecessária nesses casos mesmo que as estatísticas sejam atualizadas.

Para bancos de dados com um nível de compatibilidade inferior a 90, a execução de sp_updatestats não preserva a configuração mais recente de NORECOMPUTE para estatísticas específicas. Para bancos de dados com um nível de compatibilidade igual ou superior a 90, sp_updatestats preserva a opção NORECOMPUTE mais recente para estatísticas específicas. Para obter mais informações sobre como desabilitar e reabilitar atualizações de estatísticas, consulte Usando estatísticas para melhorar o desempenho de consultas.

Permissões

Requer associação na função de servidor fixa sysadmin ou propriedade do banco de dados (dbo).

Exemplos

O exemplo a seguir atualiza as estatísticas de tabelas no banco de dados AdventureWorks2008R2.

USE AdventureWorks2008R2;
GO
EXEC sp_updatestats