Get-Transaction
Obtient la transaction actuelle (active).
Syntaxe
Get-Transaction []
Description
L’applet Get-Transaction
de commande 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 Get-Transaction
de commande 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 Get-Member
de commande 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 transaction d'une transaction 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 transaction d'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 illustre le démarrage d'une transaction pendant qu'une autre transaction est en cours et ses effets sur l'objet transaction. En général, 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 Start-Transaction
commande inclut le paramètre Independent , Start-Transaction
ne crée pas de transaction. Au lieu de cela, elle ajoute un deuxième abonné à la transaction d'origine.
La première Start-Transaction
commande démarre la transaction. Une commande New-Item avec le paramètre UseTransaction fait partie de la transaction.
Une deuxième Start-Transaction
commande ajoute un abonné à la transaction. La commande suivante New-Item
fait également partie de la transaction.
La première Get-Transaction
commande affiche la transaction multi-abonné.
Notez que le nombre d'abonnés a la valeur 2.
La première commande Complete-Transaction ne valide pas la transaction, mais elle réduit le nombre d'abonnés à 1.
La deuxième Complete-Transaction
commande 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 illustre le démarrage d'une transaction indépendante pendant qu'une autre transaction est en cours et ses effets sur l'objet transaction.
La première Start-Transaction
commande démarre la transaction. Une New-Item
commande avec le paramètre UseTransaction fait partie de la transaction.
Une deuxième Start-Transaction
commande ajoute un abonné à la transaction. La commande suivante New-Item
fait également partie de la transaction.
La première Get-Transaction
commande affiche la transaction multi-abonné. Notez que le nombre d'abonnés a la valeur 2.
La Complete-Transaction
commande réduit le nombre d’abonnés à 1, mais elle ne valide pas la transaction.
La deuxième Complete-Transaction
commande valide la transaction.
Entrées
None
Vous ne pouvez pas rediriger des objets vers cette applet de commande.
Sorties
Cette applet de commande retourne un objet qui représente la transaction actuelle.