sys.dm_tran_current_snapshot (Transact-SQL)

Retourne une table virtuelle qui affiche toutes les transactions qui sont actives au moment où la transaction d'instantané active démarre. Si la transaction actuelle n'est pas une transaction d'instantané, cette fonction ne retourne aucune ligne. sys.dm_tran_current_snapshot est similaire à sys.dm_tran_transactions_snapshot, mis à part que sys.dm_tran_current_snapshot retourne uniquement les transactions actives pour l'instantané actuel.

Syntaxe

sys.dm_tran_current_snapshot

Table retournée

Nom de colonne

Type de données

Description

transaction_sequence_num

bigint

Numéro de séquence de la transaction active.

Autorisations

Nécessite l'autorisation VIEW SERVER STATE sur le serveur.

Exemples

L'exemple suivant illustre un scénario de test dans lequel quatre transactions simultanées, chacune étant identifiée par un numéro de séquence de transaction, sont exécutées dans une base de données où les options ALLOW_SNAPSHOT_ISOLATION et READ_COMMITTED_SNAPSHOT sont définies à ON. Les transactions suivantes sont exécutées :

  • XSN-57 est une opération Update exécutée avec le niveau d'isolement sérialisable.

  • XSN-58 est identique à XSN-57.

  • XSN-59 est une opération Select exécutée avec le niveau d'isolement d'instantané.

  • XSN-60 est identique à XSN-59.

La requête suivante est exécutée dans l'étendue de XSN-59.

SELECT 
    transaction_sequence_num
  FROM sys.dm_tran_current_snapshot;

Voici l'ensemble des résultats.

transaction_sequence_num
------------------------
57
58

Les résultats indiquent que XSN-57 et XSN-58 étaient actives au moment où la transaction d'instantané XSN-59 a démarré. Ce même résultat persiste, même après la validation ou l'annulation de XSN-57 et XSN-58, jusqu'à la fin de la transaction d'instantané.

La même requête est exécutée dans l'étendue de XSN-60.

Voici l'ensemble des résultats.

transaction_sequence_num
------------------------
57
58
59

La sortie de XSN-60 inclut les mêmes transactions que celles qui apparaissent pour XSN-59, mais elle inclut également XSN-59, qui était active lorsque XSN-60 a démarré.

Voir aussi

Référence

Fonctions et vues de gestion dynamique (Transact-SQL)

Fonctions et vues de gestion dynamique relatives aux transactions (Transact-SQL)