Compartilhar via


sys.sp_xtp_control_query_exec_stats (Transact-SQL)

Habilita a coleta de estatísticas por consulta para todos os procedimentos armazenados compilados nativamente para a instância ou para procedimentos armazenados compilados nativamente específicos.

Reduz o desempenho quando você habilita a coleta de estatísticas. Se você precisar solucionar problemas de um ou alguns procedimentos armazenados compilados nativamente, será necessário habilitar a coleta de estatísticas apenas para esses.

Para habilitar a coleta de estatísticas no nível de procedimento de todos os procedimentos armazenados compilados nativamente, consulte sys.sp_xtp_control_proc_exec_stats (Transact-SQL).

Aplica-se a: SQL Server (do SQL Server 2014 à versão atual).

Sintaxe

sp_xtp_control_query_exec_stats [ [ @new_collection_value = ] collection_value ],[ [ @database_id = ] database_id [ , [ @xtp_object_id = ] procedure_id ] , [ @old_collection_value] ]

Argumentos

  • @new\_collection\_value = value
    Determina se a coleta de estatísticas no nível do procedimento está ativada (1) ou desativada (0).

    @new\_collection\_value é definido como zero quando o SQL Server é iniciado.

  • @database\_id = = database_id, @xtp\_object\_id = procedure_id
    A ID de banco de dados e a ID de objeto do procedimento armazenado compilado nativamente. Se a coleta de estatísticas for habilitada para a instância (sys.sp_xtp_control_proc_exec_stats (Transact-SQL)), as estatísticas em um procedimento armazenado compilado nativamente serão coletadas. Se você desativar a coleção de estatísticas na instância, ela não será desativada para cada procedimento armazenado compilado de forma nativa.

    Use sys.databases (Transact-SQL), sys.procedures (Transact-SQL), DB_ID (Transact-SQL) ou OBJECT_ID (Transact-SQL) para obter as IDs de um banco de dados e de um procedimento armazenado.

  • @old\_collection\_value = value
    Retorna o status atual.

Código de retorno

0 para êxito. Diferente de zero para falha.

Permissões

Requer associação à função sysadmin fixa.

Exemplo de código

O exemplo de código a seguir mostra como habilitar a coleta de estatísticas para todos os procedimentos armazenados compilados nativamente para a instância e, depois, para um procedimento armazenado compilado nativamente específico.

declare @c bit

exec [sys].[sp_xtp_control_query_exec_stats] @new_collection_value = 1

exec sp_xtp_control_query_exec_stats @old_collection_value=@c output
select @c as 'collection status'

exec [sys].[sp_xtp_control_query_exec_stats] @new_collection_value = 1, @database_id = 5, @xtp_object_id = 341576255

exec sp_xtp_control_query_exec_stats @database_id = 5, @xtp_object_id = 341576255, @old_collection_value=@c output
select @c as 'collection status'

Consulte também

Referência

Procedimentos armazenados do sistema (Transact-SQL)

Conceitos

OLTP na memória (otimização na memória)