Get-Transaction
Hiermee haalt u de huidige (actieve) transactie op.
Syntax
Get-Transaction []
Description
De Get-Transaction
cmdlet haalt een object op dat de huidige transactie in de sessie vertegenwoordigt.
Deze cmdlet retourneert nooit meer dan één object, omdat slechts één transactie tegelijk actief is. Als u een of meer onafhankelijke transacties start (met behulp van de onafhankelijke parameter Start-Transaction), is de laatst gestarte transactie actief en dat is de transactie die Get-Transaction
wordt geretourneerd.
Wanneer alle actieve transacties zijn teruggedraaid of doorgevoerd, toont deze cmdlet de transactie die het laatst actief was in de sessie.
Deze cmdlet is een van een set cmdlets die ondersteuning bieden voor de transactiefunctie in Windows PowerShell. Zie about_Transactions voor meer informatie.
Voorbeelden
Voorbeeld 1: De huidige transactie ophalen
Start-Transaction
Get-Transaction
RollbackPreference SubscriberCount Status
------------------ --------------- ------
Error 1 Active
Met deze opdracht wordt de Get-Transaction
cmdlet gebruikt om de huidige transactie op te halen.
Voorbeeld 2: De eigenschappen en methoden van het transactieobject weergeven
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;}
Met deze opdracht wordt de Get-Member
cmdlet gebruikt om de eigenschappen en methoden van het transactieobject weer te geven.
Voorbeeld 3: de eigenschapswaarden van een teruggedraaide transactie weergeven
Set-Location hklm:\software
Start-Transaction
New-Item MyCompany -UseTransaction
Undo-Transaction
Get-Transaction
RollbackPreference SubscriberCount Status
------------------ --------------- ----------
Error 0 RolledBack
Met deze opdracht worden de eigenschapswaarden van een transactieobject weergegeven voor een transactie die is teruggedraaid.
Voorbeeld 4: De eigenschapswaarden van een vastgelegde transactie weergeven
Set-Location hklm:\software
Start-Transaction
New-Item MyCompany -UseTransaction
Complete-Transaction
Get-Transaction
RollbackPreference SubscriberCount Status
------------------ --------------- ---------
Error 1 Committed
Met deze opdracht worden de eigenschapswaarden van een transactieobject weergegeven voor een transactie die is doorgevoerd.
Voorbeeld 5: Een transactie starten terwijl er een andere transactie wordt uitgevoerd
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
In dit voorbeeld ziet u het effect op het transactieobject van het starten van een transactie terwijl er een andere transactie wordt uitgevoerd. Dit gebeurt meestal wanneer een script dat een transactie uitvoert een functie bevat of een script aanroept dat een andere volledige transactie bevat.
Tenzij de tweede Start-Transaction
opdracht de onafhankelijke parameter bevat, Start-Transaction
maakt u geen nieuwe transactie. In plaats daarvan wordt een tweede abonnee toegevoegd aan de oorspronkelijke transactie.
Met de eerste Start-Transaction
opdracht wordt de transactie gestart. Een opdracht New-Item met de parameter UseTransaction maakt deel uit van de transactie.
Met een tweede Start-Transaction
opdracht wordt een abonnee aan de transactie toegevoegd. De volgende New-Item
opdracht maakt ook deel uit van de transactie.
De eerste Get-Transaction
opdracht toont de transactie met meerdere abonnees.
U ziet dat het aantal abonnees 2 is.
De eerste opdracht Volledige transactie voert de transactie niet door, maar vermindert het aantal abonnees tot 1.
Met de tweede Complete-Transaction
opdracht wordt de transactie doorgevoerd.
Voorbeeld 6: Een onafhankelijke transactie starten terwijl er een andere wordt uitgevoerd
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
In dit voorbeeld ziet u het effect op het transactieobject van het starten van een onafhankelijke transactie terwijl er een andere transactie wordt uitgevoerd.
Met de eerste Start-Transaction
opdracht wordt de transactie gestart. Een New-Item
opdracht met de parameter UseTransaction maakt deel uit van de transactie.
Met een tweede Start-Transaction
opdracht wordt een abonnee aan de transactie toegevoegd. De volgende New-Item
opdracht maakt ook deel uit van de transactie.
De eerste Get-Transaction
opdracht toont de transactie met meerdere abonnees. Houd er rekening mee dat het aantal abonnees 2 is.
De Complete-Transaction
opdracht vermindert het aantal abonnees tot 1, maar de transactie wordt niet doorgevoerd.
Met de tweede Complete-Transaction
opdracht wordt de transactie doorgevoerd.
Invoerwaarden
None
U kunt geen objecten doorsluisen naar deze cmdlet.
Uitvoerwaarden
Met deze cmdlet wordt een object geretourneerd dat de huidige transactie vertegenwoordigt.
Verwante koppelingen
Feedback
https://aka.ms/ContentUserFeedback.
Binnenkort beschikbaar: In de loop van 2024 zullen we GitHub-problemen geleidelijk uitfaseren als het feedbackmechanisme voor inhoud en deze vervangen door een nieuw feedbacksysteem. Zie voor meer informatie:Feedback verzenden en weergeven voor