sys.sp_xtp_control_query_exec_stats (Transact-SQL)

Gilt für:SQL Server

Aktiviert die Statistiksammlung pro Abfrage für alle systemintern kompilierten gespeicherten Prozeduren der Instanz oder für bestimmte systemintern kompilierte gespeicherte Prozeduren.

Die Leistung nimmt ab, wenn Sie die Statistiksammlung aktivieren. Wenn Sie nur eine Problembehandlung oder einige nativ kompilierte gespeicherte Prozeduren ausführen müssen, können Sie die Statistiksammlung nur für diese wenigen nativ kompilierten gespeicherten Prozeduren aktivieren.

Informationen zum Aktivieren der Statistikauflistung auf Prozedurebene für alle nativ kompilierten gespeicherten Prozeduren finden Sie unter sys.sp_xtp_control_proc_exec_stats (Transact-SQL).

Syntax

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
[ ; ]

Argumente

[ @new_collection_value = ] collection_value

Bestimmt, ob die Statistikauflistung auf Prozedurebene aktiviert (1) oder deaktiviert ist (0). @new_collection_value ist bit.

@new_collection_value wird festgelegt0, wenn SQL Server gestartet wird.

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

Die Datenbank-ID und Objekt-ID (Datentyp int) für die nativ kompilierte gespeicherte Prozedur. Wenn die Statistikauflistung für die Instanz (sys.sp_xtp_control_proc_exec_stats (Transact-SQL)) aktiviert ist, werden Statistiken zu einer nativ kompilierten gespeicherten Prozedur gesammelt. Durch Deaktivieren der Statistikauflistung für die Instanz wird die Statistikauflistung für einzelne nativ kompilierte gespeicherte Prozeduren nicht deaktiviert.

Verwenden Sie sys.databases (Transact-SQL), sys.procedures (Transact-SQL), DB_ID (Transact-SQL) oder OBJECT_ID (Transact-SQL), um IDs für eine Datenbank und gespeicherte Prozedur abzurufen.

[ @old_collection_value = ] old_collection_value OUTPUT

Gibt den aktuellen Status zurück. @old_collection_value ist bit.

Rückgabecodewerte

0 für Erfolg. Ungleich 0 für Fehler.

Berechtigungen

Erfordert die Mitgliedschaft in der Festen Sysadmin-Rolle .

Beispiele

Im folgenden Codebeispiel wird gezeigt, wie Sie die Statistikauflistung für alle nativ kompilierten gespeicherten Prozeduren für die Instanz und dann für eine bestimmte nativ kompilierte gespeicherte Prozedur aktivieren.

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';