Compartir por


sys.sp_xtp_control_query_exec_stats (Transact-SQL)

Se aplica a: SQL Server

Habilita la recopilación de estadísticas por consulta para todos los procedimientos almacenados compilados de forma nativa para la instancia y otros específicos.

El rendimiento disminuye cuando se habilita la recopilación de estadísticas. Si solo necesita solucionar problemas de uno o algunos procedimientos almacenados compilados de forma nativa, puede habilitar la recopilación de estadísticas solo para esos pocos procedimientos almacenados compilados de forma nativa.

Para habilitar la recopilación de estadísticas en el nivel de procedimiento para todos los procedimientos almacenados compilados de forma nativa, consulte sys.sp_xtp_control_proc_exec_stats (Transact-SQL).

Sintaxis

sys.sp_xtp_control_query_exec_stats
    [ [ @new_collection_value = ] collection_value ]
    [ , [ @database_id = ] database_id ]
    [ , [ @xtp_object_id = ] procedure_id ]
    , [ @old_collection_value = ] old_collection_value OUTPUT
[ ; ]

Argumentos

[ @new_collection_value = ] collection_value

Determina si la colección de estadísticas de nivel de procedimiento está activada (1) o desactivada (0). @new_collection_value es bit.

@new_collection_value se establece en 0 cuando se inicia SQL Server.

[ @database_id = ] database_id, [ @xtp_object_id = ] procedure_id

El identificador de base de datos y el identificador de objeto (tipo de datos int) para el procedimiento almacenado compilado de forma nativa. Si la recopilación de estadísticas está habilitada para la instancia (sys.sp_xtp_control_proc_exec_stats (Transact-SQL), se recopilan estadísticas en un procedimiento almacenado compilado de forma nativa. Desactivar la recopilación de estadísticas en la instancia no desactiva la recopilación de estadísticas para procedimientos almacenados compilados de forma nativa individual.

Use sys.databases (Transact-SQL), sys.procedures (Transact-SQL), DB_ID (Transact-SQL) o OBJECT_ID (Transact-SQL) para obtener identificadores para una base de datos y un procedimiento almacenado.

[ @old_collection_value = ] old_collection_value OUTPUT

Devuelve el estado actual. @old_collection_value es bit.

Valores de código de retorno

0 para éxito. Distinto de cero para error.

Permisos

Requiere la pertenencia al rol sysadmin fijo.

Ejemplos

En el ejemplo de código siguiente se muestra cómo habilitar la recopilación de estadísticas para todos los procedimientos almacenados compilados de forma nativa para la instancia y, a continuación, para un procedimiento almacenado compilado de forma nativa específica.

DECLARE @c BIT;

EXEC sys.sp_xtp_control_query_exec_stats @new_collection_value = 1;

EXEC sys.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 = 41576255;

EXEC sys.sp_xtp_control_query_exec_stats @database_id = 5,
    @xtp_object_id = 41576255,
    @old_collection_value = @c OUTPUT;

SELECT @c AS 'collection status';