SHOW TRANSACTIONS

Liste toutes les transactions en cours d’exécution. La commande peut être utilisée pour afficher les transactions de l’utilisateur actuel ou de tous les utilisateurs du compte.

Voir aussi :

SHOW LOCKS

Syntaxe

SHOW TRANSACTIONS [ IN ACCOUNT ]
Copy

Paramètres

IN ACCOUNT

Affiche toutes les transactions de tous les utilisateurs du compte. Il ne peut être utilisé que par les utilisateurs ayant le rôle ACCOUNTADMIN (c’est-à-dire les administrateurs de comptes).

Sortie

La sortie de la commande affiche les métadonnées de transaction dans les colonnes suivantes :

Colonne

Description

id

ID de transaction (un entier signé 64 bits).

user

Utilisateur actuel.

session

ID de session.

name

Nom défini par l’utilisateur ou nom généré par le système (UUID) pour la transaction.

started_on

Horodatage spécifiant quand la transaction a commencé à s’exécuter.

state

État de la transaction : running.

scope

ID de l’opération qui a créé une procédure stockée dans une transaction limitée. 0 pour les transactions non scopées.

Notes sur l’utilisation

  • La sortie de commande inclut les IDs de toutes les transactions en cours. Ces IDs peuvent être utilisés comme entrée pour SYSTEM$ABORT_TRANSACTION afin d’annuler une transaction spécifiée.

  • Une procédure stockée qui contient une transaction peut être appelée à partir d’une autre transaction. Ces transactions sont distinctes mais « scopées ». Les valeurs dans la colonne scope sont utiles pour découvrir si deux transactions sont dans le même scope. Pour plus d’informations, voir Transactions scopées.

  • La commande ne nécessite pas l’exécution d’un entrepôt en cours d’exécution.

  • La commande ne renvoie que les objets pour lesquels le rôle actuel de l’utilisateur s’est vu accorder au moins un privilège d’accès.

  • Le privilège d’accès MANAGE GRANTS permet implicitement à son titulaire de voir tous les objets du compte. Par défaut, seuls l’administrateur du compte (utilisateurs avec le rôle ACCOUNTADMIN) et l’administrateur de sécurité (utilisateurs avec le rôle SECURITYADMIN) ont le privilège MANAGE GRANTS.

  • Pour post-traiter la sortie de cette commande, vous pouvez utiliser la syntaxe opérateur de canal (->>) ou la fonction RESULT_SCAN. Les deux constructions traitent la sortie comme un jeu de résultats que vous pouvez interroger.

    Par exemple, vous pouvez utiliser l’opérateur de canal ou la fonction RESULT_SCAN pour sélectionner des colonnes spécifiques à partir de la sortie de la commande SHOW ou pour filtrer les lignes.

    Lorsque vous faites référence aux colonnes de sortie, utilisez des identificateurs entre guillemets doubles pour les noms des colonnes. Par exemple, pour sélectionner la colonne de sortie type, spécifiez SELECT "type".

    Vous devez utiliser des identificateurs entre guillemets doubles, car les noms des colonnes de sortie pour les commandes SHOW sont en minuscules. Les guillemets doubles garantissent que les noms des colonnes dans la liste SELECT ou dans la clause WHERE correspondent aux noms des colonnes dans la sortie de la commande SHOW qui a été analysée.

  • La commande renvoie un maximum de dix mille enregistrements pour le type d’objet spécifié, conformément aux privilèges d’accès du rôle utilisé pour exécuter la commande. Aucun enregistrement au-delà de la limite de dix mille enregistrements n’est renvoyé, même si un filtre a été appliqué.

    Pour afficher les résultats pour lesquels il existe plus de dix mille enregistrements, interrogez la vue correspondante (le cas échéant) dans Schéma d’information de Snowflake.

Exemple

Dans cet exemple, deux sessions sont exécutées par le même utilisateur, avec une transaction en cours pour chaque session.

SHOW TRANSACTIONS;
Copy
+---------------------+---------+-----------------+--------------------------------------+-------------------------------+---------+-------+
|                  id | user    |         session | name                                 | started_on                    | state   | scope |
|---------------------+---------+-----------------+--------------------------------------+-------------------------------+---------+-------|
| 1721165674582000000 | CALIBAN | 186457423713330 | 551f494d-90ed-438d-b32b-1161396c3a22 | 2024-07-16 14:34:34.582 -0700 | running |     0 |
| 1721165584820000000 | CALIBAN | 186457423749354 | a092aa44-9a0a-4955-9659-123b35c0efeb | 2024-07-16 14:33:04.820 -0700 | running |     0 |
+---------------------+---------+-----------------+--------------------------------------+-------------------------------+---------+-------+