Get-Transaction
Hiermee haalt u de huidige (actieve) transactie op.
Syntaxis
Get-Transaction []
Description
De cmdlet Get-Transaction
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 van Start-Transaction), is de laatst gestarte transactie actief en dat is de transactie die Get-Transaction
retourneert.
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_Transactionsvoor 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 cmdlet Get-Member
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 parameter Independent bevat, maakt Start-Transaction
geen nieuwe transactie. In plaats daarvan wordt een tweede abonnee toegevoegd aan de oorspronkelijke transactie.
De eerste Start-Transaction
opdracht start de transactie. 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.
U ziet dat het aantal abonnees 2 is.
De eerste Complete-Transaction opdracht 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.
De eerste Start-Transaction
opdracht start de transactie. 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.
Met de opdracht Complete-Transaction
wordt het aantal abonnees beperkt tot 1, maar wordt de transactie 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.