Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk:SQL Server
Azure SQL Database
Instans Terkelola Azure SQL
Azure Synapse Analytics
Sistem Platform Analitik (PDW)
Database SQL di Microsoft Fabric
Mengembalikan tabel virtual yang menampilkan semua transaksi aktif pada saat transaksi rekam jepret saat ini dimulai. Jika transaksi saat ini bukan transaksi rekam jepret, fungsi ini tidak mengembalikan baris. sys.dm_tran_current_snapshot mirip dengan sys.dm_tran_transactions_snapshot, kecuali bahwa sys.dm_tran_current_snapshot hanya mengembalikan transaksi aktif untuk transaksi rekam jepret saat ini.
Note
Untuk memanggil ini dari Azure Synapse Analytics atau Analytics Platform System (PDW), gunakan nama sys.dm_pdw_nodes_tran_current_snapshot. Sintaks ini tidak didukung oleh kumpulan SQL tanpa server di Azure Synapse Analytics.
Syntax
sys.dm_tran_current_snapshot
Tabel Dikembalikan
| Nama kolom | Jenis data | Description |
|---|---|---|
| transaction_sequence_num | bigint | Nomor urutan transaksi transaksi aktif. |
| pdw_node_id | int |
Berlaku untuk: Azure Synapse Analytics, Analytics Platform System (PDW) Pengidentifikasi untuk simpul tempat distribusi ini aktif. |
Permissions
Pada SQL Server dan SQL Managed Instance, memerlukan VIEW SERVER STATE izin.
Pada tujuan layanan SQL Database Basic, S0 Pada semua tujuan layanan SQL Database lainnya, izin VIEW DATABASE STATE pada database, atau keanggotaan dalam ##MS_ServerStateReader## peran server diperlukan.
Izin untuk SQL Server 2022 dan yang lebih baru
Memerlukan VIEW izin SERVER PERFORMANCE STATE di server.
Examples
Contoh berikut menggunakan skenario pengujian di mana empat transaksi bersamaan, masing-masing diidentifikasi oleh nomor urutan transaksi (XSN), berjalan dalam database yang memiliki opsi ALLOW_SNAPSHOT_ISOLATION dan READ_COMMITTED_SNAPSHOT diatur ke AKTIF. Transaksi berikut berjalan:
XSN-57 adalah operasi pembaruan di bawah isolasi yang dapat diserialisasikan.
XSN-58 sama dengan XSN-57.
XSN-59 adalah operasi pilih di bawah isolasi rekam jepret.
XSN-60 sama dengan XSN-59.
Kueri berikut dijalankan dalam cakupan XSN-59.
SELECT
transaction_sequence_num
FROM sys.dm_tran_current_snapshot;
Berikut adalah kumpulan hasilnya.
transaction_sequence_num
------------------------
57
58
Hasilnya menunjukkan bahwa XSN-57 dan XSN-58 aktif pada saat transaksi rekam jepret XSN-59 dimulai. Hasil yang sama ini berlanjut, bahkan setelah XSN-57 dan XSN-58 melakukan atau menggulung balik, sampai transaksi rekam jepret selesai.
Kueri yang sama dijalankan dalam cakupan XSN-60.
Berikut adalah kumpulan hasilnya.
transaction_sequence_num
------------------------
57
58
59
Output untuk XSN-60 mencakup transaksi yang sama yang muncul untuk XSN-59, tetapi juga mencakup XSN-59, yang aktif ketika XSN-60 dimulai.