Get-Transaction
Obtient la transaction actuelle (active).
Syntaxe
Default (Par défaut)
Get-Transaction
Description
L’applet de commande Get-Transaction obtient un objet qui représente la transaction actuelle dans la session.
Cette applet de commande ne retourne jamais plusieurs objets, car une seule transaction est active à la fois. Si vous démarrez une ou plusieurs transactions indépendantes (à l’aide du paramètre Indépendant de Start-Transaction), la transaction la plus récemment démarrée est active et c’est la transaction qui Get-Transaction retourne.
Lorsque toutes les transactions actives ont été restaurées ou validées, cette applet de commande affiche la transaction qui a été la plus récente active dans la session.
Cette applet de commande est l’un des ensembles d’applets de commande qui prennent en charge la fonctionnalité de transactions dans Windows PowerShell. Pour plus d’informations, consultez about_Transactions.
Exemples
Exemple 1 : Obtenir la transaction actuelle
Start-Transaction
Get-Transaction
RollbackPreference SubscriberCount Status
------------------ --------------- ------
Error 1 Active
Cette commande utilise l’applet de commande Get-Transaction pour obtenir la transaction actuelle.
Exemple 2 : Afficher les propriétés et méthodes de l’objet transactionnel
Get-Transaction | Get-Member
Name MemberType Definition
---- ---------- ----------
Dispose Method System.Void Dispose(), System.Void Dispose(Boolean disposing)
Equals Method System.Boolean Equals(Object obj)
GetHashCode Method System.Int32 GetHashCode()
GetType Method System.Type GetType()
ToString Method System.String ToString()
IsCommitted Property System.Boolean IsCommitted {get;}
IsRolledBack Property System.Boolean IsRolledBack {get;}
RollbackPreference Property System.Management.Automation.RollbackSeverity RollbackPreference {get;}
SubscriberCount Property System.Int32 SubscriberCount {get;set;}
Cette commande utilise l’applet de commande Get-Member pour afficher les propriétés et méthodes de l’objet transactionnel.
Exemple 3 : Afficher les valeurs de propriété d’une transaction restaurée
Set-Location HKLM:\software
Start-Transaction
New-Item MyCompany -UseTransaction
Undo-Transaction
Get-Transaction
RollbackPreference SubscriberCount Status
------------------ --------------- ----------
Error 0 RolledBack
Cette commande affiche les valeurs de propriété d’un objet transactionnel pour une transaction qui a été restaurée.
Exemple 4 : Afficher les valeurs de propriété d’une transaction validée
Set-Location HKLM:\software
Start-Transaction
New-Item MyCompany -UseTransaction
Complete-Transaction
Get-Transaction
RollbackPreference SubscriberCount Status
------------------ --------------- ---------
Error 1 Committed
Cette commande affiche les valeurs de propriété d’un objet transactionnel pour une transaction validée.
Exemple 5 : Démarrer une transaction alors qu’une autre est en cours
Set-Location HKLM:\software
Start-Transaction
New-Item MyCompany -UseTransaction
Start-Transaction
New-Item MyCompany2 -UseTransaction
Get-Transaction
RollbackPreference SubscriberCount Status
------------------ --------------- ------
Error 2 Active
Complete-Transaction
Get-Transaction
RollbackPreference SubscriberCount Status
------------------ --------------- ------
Error 1 Active
Complete-Transaction
Get-Transaction
RollbackPreference SubscriberCount Status
------------------ --------------- ---------
Error 1 Committed
Cet exemple montre l’effet sur l’objet transactionnel de démarrage d’une transaction pendant qu’une autre transaction est en cours. En règle générale, cela se produit lorsqu’un script qui exécute une transaction inclut une fonction ou appelle un script qui contient une autre transaction complète.
Sauf si la deuxième commande Start-Transaction inclut le paramètre Independent, Start-Transaction ne crée pas de transaction. Au lieu de cela, il ajoute un deuxième abonné à la transaction d’origine.
La première commande Start-Transaction démarre la transaction. Une commande New-Item avec le paramètre UseTransaction fait partie de la transaction.
Une deuxième commande Start-Transaction ajoute un abonné à la transaction. La commande New-Item suivante fait également partie de la transaction.
La première commande Get-Transaction affiche la transaction multi-abonné.
Notez que le nombre d’abonnés est 2.
La première commande Complete-Transaction ne valide pas la transaction, mais réduit le nombre d’abonnés à 1.
La deuxième commande Complete-Transaction valide la transaction.
Exemple 6 : Démarrer une transaction indépendante alors qu’une autre est en cours
Set-Location HKLM:\software
Start-Transaction
Get-Transaction
RollbackPreference SubscriberCount IsRolledBack IsCommitted
------------------ --------------- ------------ -----------
Error 1 False False
Start-Transaction -Independent
Get-Transaction
RollbackPreference SubscriberCount IsRolledBack IsCommitted
------------------ --------------- ------------ -----------
Error 1 False False
Complete-Transaction
Get-Transaction
Complete-Transaction
Get-Transaction
Cet exemple montre l’effet sur l’objet transactionnel de démarrage d’une transaction indépendante alors qu’une autre transaction est en cours.
La première commande Start-Transaction démarre la transaction. Une commande New-Item avec le paramètre UseTransaction fait partie de la transaction.
Une deuxième commande Start-Transaction ajoute un abonné à la transaction. La commande New-Item suivante fait également partie de la transaction.
La première commande Get-Transaction affiche la transaction multi-abonné. Notez que le nombre d’abonnés est 2.
La commande Complete-Transaction réduit le nombre d’abonnés à 1, mais elle ne valide pas la transaction.
La deuxième commande Complete-Transaction valide la transaction.
Entrées
None
Vous ne pouvez pas diriger les objets vers cette applet de commande.
Sorties
PSTransaction
Cette applet de commande retourne un objet qui représente la transaction actuelle.