sys.sp_xtp_control_query_exec_stats (Transact-SQL)
Включает сбор статистики запросов для всех скомпилированных в собственном коде хранимых процедур экземпляра или определенных, скомпилированных в собственном коде хранимых процедур.
При включении сбора статистики производительность снижается. Если требуется устранить неполадки только одной или нескольких скомпилированных в собственном коде хранимых процедур, то включить сбор статистики можно только для этих хранимых процедур.
Сведения о включении сбора статистики на уровне процедуры для всех скомпилированных в собственном коде хранимых процедур см. в разделе sys.sp_xtp_control_proc_exec_stats (Transact-SQL).
Применимо для следующих объектов: SQL Server (начиная с SQL Server 2014 до текущей версии). |
Синтаксис
sp_xtp_control_query_exec_stats [ [ @new_collection_value = ] collection_value ],[ [ @database_id = ] database_id [ , [ @xtp_object_id = ] procedure_id ] , [ @old_collection_value] ]
Аргументы
@new\_collection\_value = value
Определяет, включен (1) или выключен (0) сбор статистики на уровне процедуры.При запуске SQL Server аргумент @new\_collection\_value получает значение нуль.
@database\_id = = database_id, @xtp\_object\_id = procedure_id
Идентификатор базы данных и идентификатор объекта для скомпилированной в собственном коде хранимой процедуры. Если сбор статистики для экземпляра включен (sys.sp_xtp_control_proc_exec_stats (Transact-SQL)), то собирается статистика по скомпилированной в собственном коде хранимой процедуре. При отключении сбора статистики для экземпляра сбор статистики для отдельных, скомпилированных в собственном коде хранимых процедур не отключается.Для получения идентификаторов базы данных и хранимой процедуры используйте sys.databases (Transact-SQL), sys.procedures (Transact-SQL), DB_ID (Transact-SQL) или OBJECT_ID (Transact-SQL).
@old\_collection\_value = value
Возвращает текущее состояние.
Код возврата
0 — успешное завершение. Ненулевое значение — ошибка.
Разрешения
Необходимо членство в предопределенной роли sysadmin.
Образец кода
В следующем примере кода показано, как включить сбор статистики для всех скомпилированных в собственном коде хранимых процедур экземпляра, а затем для определенной процедуры.
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'
См. также
Справочник
Системные хранимые процедуры (Transact-SQL)