sys.fn_stmt_sql_handle_from_sql_stmt (Transact-SQL)
Gilt für: SQL Server 2016 (13.x)
und höher
Azure SQL-Datenbank Azure SQL verwaltete Instanz
Ruft die stmt_sql_handle für eine Transact-SQL-Anweisung unter dem angegebenen Parametrisierungstyp ab (einfach oder erzwungen). Auf diese Weise können Sie auf abfragen verweisen, die im Abfrage-Store gespeichert sind, indem Sie deren stmt_sql_handle, wenn Sie ihren Text kennen.
Transact-SQL-Syntaxkonventionen
Syntax
sys.fn_stmt_sql_handle_from_sql_stmt
(
'query_sql_text',
[ query_param_type
) [;]
Argumente
query_sql_text
Der Text der Abfrage im Abfragespeicher, für den das Handle verwendet werden soll. query_sql_text ist ein nvarchar(max)- ohne Standardwert.
query_param_type
Der Parametertyp der Abfrage. query_param_type ist ein tinyint. Mögliche Werte:
NULL: Standardwert 0
0 – Keine
1 – Benutzer
2 – Einfach
3 – Erzwungen
Zurückgegebene Spalten
In der folgenden Tabelle sind die Spalten aufgeführt, die sys.fn_stmt_sql_handle_from_sql_stmt zurückgegeben werden.
Spaltenname | type | BESCHREIBUNG |
---|---|---|
statement_sql_handle | varbinary(64) | Das SQL Handle. |
query_sql_text | nvarchar(max) | Der Text der Transact-SQL-Anweisung. |
query_parameterization_type | tinyint | Der Abfrageparameterisierungstyp. |
Rückgabecodewerte
„0“ (erfolgreich) oder „1“ (fehlerhaft)
Bemerkungen
Berechtigungen
Erfordert die EXECUTE-Berechtigung für die Datenbank und die DELETE-Berechtigung für die Katalogsichten des Abfragespeichers.
Beispiele
Im folgenden Beispiel wird eine -Anweisung ausgeführt und dann verwendet, sys.fn_stmt_sql_handle_from_sql_stmt
um das SQL dieser Anweisung zurück zu geben.
SELECT * FROM sys.databases;
SELECT * FROM sys.fn_stmt_sql_handle_from_sql_stmt('SELECT * FROM sys.databases', NULL);
Verwenden Sie die -Funktion, um Abfragedaten Store anderen dynamischen Verwaltungssichten zu korrelieren. Im folgenden Beispiel:
SELECT qt.query_text_id, q.query_id, qt.query_sql_text, qt.statement_sql_handle,
q.context_settings_id, qs.statement_context_id
FROM sys.query_store_query_text AS qt
JOIN sys.query_store_query AS q
ON qt.query_text_id = q.query_id
CROSS APPLY sys.fn_stmt_sql_handle_from_sql_stmt (qt.query_sql_text, null) AS fn_handle_from_stmt
JOIN sys.dm_exec_query_stats AS qs
ON fn_handle_from_stmt.statement_sql_handle = qs.statement_sql_handle;
Weitere Informationen
sp_query_store_force_plan (Transact-SQL)
sp_query_store_remove_plan (Transact-SQL)
sp_query_store_unforce_plan (Transact-SQL)
sp_query_store_reset_exec_stats (Transact-SQL)
sp_query_store_flush_db (Transact-SQL)
sp_query_store_remove_query (Transact-SQL)
Abfragen Store Katalogsichten (Transact-SQL)
Überwachen der Leistung mit dem Abfragespeicher