sys.fn_stmt_sql_handle_from_sql_stmt (T-SQL)
Berlaku untuk: SQL Server 2016 (13.x) dan Azure SQL Database Azure SQL Managed Instance yang lebih baru
Mendapatkan stmt_sql_handle untuk pernyataan Transact-SQL di bawah jenis parameterisasi yang diberikan (sederhana atau dipaksa). Ini memungkinkan Anda untuk merujuk ke kueri yang disimpan di Penyimpanan Kueri dengan menggunakan stmt_sql_handle mereka saat Anda mengetahui teksnya.
Sintaks
sys.fn_stmt_sql_handle_from_sql_stmt
(
'query_sql_text' ,
[ query_param_type
) [;]
Argumen
query_sql_text
Adalah teks kueri di penyimpanan kueri yang Ingin Anda tangani. query_sql_text adalah nvarchar(max), tanpa default.
query_param_type
Adalah jenis parameter kueri. query_param_type kecil. Kemungkinan nilai adalah:
NULL - default ke 0
0 - Tidak ada
1 - Pengguna
2 - Sederhana
3 - Dipaksa
Kolom yang Dikembalikan
Tabel berikut mencantumkan kolom yang sys.fn_stmt_sql_handle_from_sql_stmt
dikembalikan.
Nama kolom | Tipe | Deskripsi |
---|---|---|
statement_sql_handle | varbinary(64) | Handel SQL. |
query_sql_text | nvarchar(maks) | Teks pernyataan Transact-SQL. |
query_parameterization_type | kecil | Jenis parameterisasi kueri. |
Mengembalikan nilai kode
0 (keberhasilan) atau 1 (kegagalan)
Keterangan
Izin
Memerlukan izin EXECUTE pada database, dan izin DELETE pada tampilan katalog penyimpanan kueri.
Contoh
Contoh berikut menjalankan pernyataan, lalu menggunakan sys.fn_stmt_sql_handle_from_sql_stmt
untuk mengembalikan handel SQL dari pernyataan tersebut.
SELECT * FROM sys.databases;
SELECT * FROM sys.fn_stmt_sql_handle_from_sql_stmt('SELECT * FROM sys.databases', NULL);
Gunakan fungsi untuk menghubungkan data Penyimpanan Kueri dengan tampilan manajemen dinamis lainnya. Lihat contoh berikut:
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;
Lihat juga
- sp_query_store_force_plan (T-SQL)
- sp_query_store_remove_plan (T-SQL)
- sp_query_store_unforce_plan (T-SQL)
- sp_query_store_reset_exec_stats (T-SQL)
- sp_query_store_flush_db (T-SQL)
- sp_query_store_remove_query (T-SQL)
- Tampilan Katalog Penyimpanan Kueri (Transact-SQL)
- Memantau Performa Dengan Menggunakan Penyimpanan Kueri