sys.dm_tran_current_snapshot (Transact-SQL)
適用対象:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)
現在のスナップショット トランザクションの開始時点でアクティブになっている、すべてのトランザクションを表示する仮想テーブルを返します。 現在のトランザクションがスナップショット トランザクションでない場合、この関数は行を返しません。 sys.dm_tran_current_スナップショットはsys.dm_tran_transactions_スナップショットに似ていますが、sys.dm_tran_current_スナップショットは現在のスナップショット トランザクションのアクティブなトランザクションのみを返します。
Note
これを Azure Synapse Analytics または Analytics Platform System (PDW) から呼び出すには、sys.dm_pdw_nodes_tran_current_スナップショットという名前を使用します。 この構文は、Azure Synapse Analytics のサーバーレス SQL プールでサポートされていません。
構文
sys.dm_tran_current_snapshot
返されるテーブル
列名 | データ型 | 説明 |
---|---|---|
transaction_sequence_num | bigint | アクティブなトランザクションのシーケンス番号。 |
pdw_node_id | int | 適用対象: Azure Synapse Analytics、Analytics Platform System (PDW) このディストリビューションがオンになっているノードの識別子。 |
アクセス許可
SQL Server と SQL Managed Instance では、VIEW SERVER STATE
アクセス許可が必要です。
SQL Database Basic、S0、S1 サービス目標、およびエラスティック プール内のデータベースの場合、サーバー管理者アカウント、Microsoft Entra 管理者アカウント、またはサーバー ロールの##MS_ServerStateReader##
メンバーシップが必要です。 他のすべての SQL Database サービス目標では、データベースに対する VIEW DATABASE STATE
アクセス許可または ##MS_ServerStateReader##
サーバー ロールのメンバーシップのいずれかが必要です。
SQL Server 2022 以降でのアクセス許可
サーバーに対する VIEW SERVER PERFORMANCE STATE アクセス許可が必要です。
例
次の例では、4 つの同時実行トランザクションが存在するテスト シナリオを使用します。これらのトランザクションはそれぞれトランザクション シーケンス番号 (XSN) で識別され、ALLOW_SNAPSHOT_ISOLATION オプションと READ_COMMITTED_SNAPSHOT オプションが ON に設定されているデータベース内で実行されます。 実行されるトランザクションは次のとおりです。
XSN-57。SERIALIZABLE 分離での更新操作です。
XSN-58 は XSN-57 と同じです。
XSN-59 は、スナップショット分離での選択操作です。
XSN-60 は XSN-59 と同じです。
次のクエリは、XSN-59 のスコープ内で実行されます。
SELECT
transaction_sequence_num
FROM sys.dm_tran_current_snapshot;
結果セットは次のようになります。
transaction_sequence_num
------------------------
57
58
結果は、スナップショット トランザクション XSN-59 が開始された時点で XSN-57 と XSN-58 がアクティブであったことを示しています。 XSN-57 および XSN-58 のコミットまたはロールバック後も、スナップショット トランザクションが完了するまで、同じ結果が保持されます。
XSN-60 のスコープ内で同じクエリが実行されます。
結果セットは次のようになります。
transaction_sequence_num
------------------------
57
58
59
XSN-60 の出力には、XSN-59 に表示されるのと同じトランザクションが含まれますが、XSN-59 も含まれています。XSN-60 の起動時にアクティブでした。
参照
動的管理ビューと動的管理関数 (Transact-SQL)
トランザクション関連の動的管理ビューおよび関数 (Transact-SQL)
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示