Get-Transaction
Hämtar den aktuella (aktiva) transaktionen.
Syntax
Get-Transaction []
Description
Cmdleten Get-Transaction
hämtar ett objekt som representerar den aktuella transaktionen i sessionen.
Den här cmdleten returnerar aldrig fler än ett objekt, eftersom endast en transaktion är aktiv i taget. Om du startar en eller flera oberoende transaktioner (med hjälp av den oberoende parametern starttransaktion) är den senast startade transaktionen aktiv och det är den transaktion som Get-Transaction
returneras.
När alla aktiva transaktioner antingen har återställts eller checkats in visar den här cmdleten transaktionen som senast var aktiv i sessionen.
Den här cmdleten är en av en uppsättning cmdletar som stöder transaktionsfunktionen i Windows PowerShell. Mer information finns i about_Transactions.
Exempel
Exempel 1: Hämta den aktuella transaktionen
Start-Transaction
Get-Transaction
RollbackPreference SubscriberCount Status
------------------ --------------- ------
Error 1 Active
Det här kommandot använder cmdleten Get-Transaction
för att hämta den aktuella transaktionen.
Exempel 2: Visa egenskaperna och metoderna för transaktionsobjektet
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;}
Det här kommandot använder cmdleten Get-Member
för att visa egenskaperna och metoderna för transaktionsobjektet.
Exempel 3: Visa egenskapsvärdena för en återställd transaktion
Set-Location hklm:\software
Start-Transaction
New-Item MyCompany -UseTransaction
Undo-Transaction
Get-Transaction
RollbackPreference SubscriberCount Status
------------------ --------------- ----------
Error 0 RolledBack
Det här kommandot visar egenskapsvärdena för ett transaktionsobjekt för en transaktion som har återställts.
Exempel 4: Visa egenskapsvärdena för en bekräftad transaktion
Set-Location hklm:\software
Start-Transaction
New-Item MyCompany -UseTransaction
Complete-Transaction
Get-Transaction
RollbackPreference SubscriberCount Status
------------------ --------------- ---------
Error 1 Committed
Det här kommandot visar egenskapsvärdena för ett transaktionsobjekt för en transaktion som har checkats in.
Exempel 5: Starta en transaktion medan en annan pågår
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
Det här exemplet visar effekten på transaktionsobjektet för att starta en transaktion medan en annan transaktion pågår. Detta inträffar vanligtvis när ett skript som kör en transaktion innehåller en funktion eller anropar ett skript som innehåller en annan fullständig transaktion.
Såvida inte det andra Start-Transaction
kommandot innehåller den oberoende parametern skapar Start-Transaction
inte en ny transaktion. I stället läggs en andra prenumerant till den ursprungliga transaktionen.
Det första Start-Transaction
kommandot startar transaktionen. Ett nytt objekt-kommando med parametern UseTransaction är en del av transaktionen.
Ett andra Start-Transaction
kommando lägger till en prenumerant i transaktionen. Nästa New-Item
kommando är också en del av transaktionen.
Det första Get-Transaction
kommandot visar transaktionen för flera prenumeranter.
Observera att antalet prenumeranter är 2.
Det första kommandot Complete-Transaction checkar inte in transaktionen, men det minskar antalet prenumeranter till 1.
Det andra Complete-Transaction
kommandot checkar in transaktionen.
Exempel 6: Starta en oberoende transaktion medan en annan pågår
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
Det här exemplet visar effekten på transaktionsobjektet att starta en oberoende transaktion medan en annan transaktion pågår.
Det första Start-Transaction
kommandot startar transaktionen. Ett New-Item
kommando med parametern UseTransaction är en del av transaktionen.
Ett andra Start-Transaction
kommando lägger till en prenumerant i transaktionen. Nästa New-Item
kommando är också en del av transaktionen.
Det första Get-Transaction
kommandot visar transaktionen för flera prenumeranter. Observera att antalet prenumeranter är 2.
Kommandot Complete-Transaction
minskar antalet prenumeranter till 1, men transaktionen checkas inte in.
Det andra Complete-Transaction
kommandot checkar in transaktionen.
Indata
None
Du kan inte skicka objekt till den här cmdleten.
Utdata
Den här cmdleten returnerar ett objekt som representerar den aktuella transaktionen.
Relaterade länkar
Feedback
https://aka.ms/ContentUserFeedback.
Kommer snart: Under hela 2024 kommer vi att fasa ut GitHub-problem som feedbackmekanism för innehåll och ersätta det med ett nytt feedbacksystem. Mer information finns i:Skicka och visa feedback för