sys.sp_xtp_control_query_exec_stats(Transact-SQL)
적용 대상: SQL Server
인스턴스에 대해 고유하게 컴파일된 모든 저장 프로시저 또는 고유하게 컴파일된 특정 저장 프로시저에 대해 쿼리별 통계 컬렉션을 설정합니다.
통계 수집을 사용하도록 설정하면 성능이 저하됩니다. 고유하게 컴파일된 저장 프로시저 중 하나 또는 몇 가지 고유하게 컴파일된 저장 프로시저만 해결해야 하는 경우 고유하게 컴파일된 몇 가지 저장 프로시저에 대해서만 통계 수집을 사용하도록 설정할 수 있습니다.
고유하게 컴파일된 모든 저장 프로시저에 대해 프로시저 수준에서 통계 수집을 사용하도록 설정하려면 sys.sp_xtp_control_proc_exec_stats 참조하세요.
구문
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
[ ; ]
인수
[ @new_collection_value = ] collection_value
프로시저 수준 통계 수집이 설정() 또는 해제(1
0
)인지 여부를 결정합니다. @new_collection_value 비트입니다.
@new_collection_value SQL Server가 시작될 때로 0
설정됩니다.
[ @database_id = ] database_id, [ @xtp_object_id = ] procedure_id
고유하게 컴파일된 저장 프로시저의 데이터베이스 ID 및 개체 ID(데이터 형식 int)입니다. 인스턴스(sys.sp_xtp_control_proc_exec_stats에 대해 통계 수집을 사용하도록 설정하면 고유하게 컴파일된 저장 프로시저에 대한 통계가 수집됩니다. 인스턴스에서 통계 수집을 해제해도 고유하게 컴파일된 개별 저장 프로시저에 대한 통계 수집이 해제되지는 않습니다.
sys.databases, sys.procedures, DB_ID 또는 OBJECT_ID 사용하여 데이터베이스 및 저장 프로시저에 대한 ID를 가져옵니다.
[ @old_collection_value = ] old_collection_value OUTPUT
현재 상태를 반환합니다. @old_collection_value 비트입니다.
반환 코드 값
0
성공을 위한 것입니다. 실패의 경우 0이 아닌 값입니다.
사용 권한
고정 sysadmin 역할의 멤버 자격이 필요합니다.
예제
다음 코드 샘플에서는 인스턴스에 대해 고유하게 컴파일된 모든 저장 프로시저에 대해 통계 수집을 사용하도록 설정한 다음 고유하게 컴파일된 특정 저장 프로시저에 대해 통계 수집을 사용하도록 설정하는 방법을 보여 줍니다.
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';