Get-Transaction
Ruft die aktuelle (aktive) Transaktion ab.
Syntax
Get-Transaction [<CommonParameters>]
Beschreibung
Das Cmdlet "Get-Transaction" ruft ein Objekt ab, das die aktuelle Transaktion in der Sitzung darstellt.
Dieses Cmdlet gibt nie mehr als ein Objekt zurück, da jeweils nur eine Transaktion aktiv ist. Wenn Sie eine oder mehrere unabhängige Transaktionen (mit dem Independent-Parameter von Start-Transaction) starten, ist die zuletzt gestartete Transaktion aktiv. Diese Transaktion wird von Get-Transaction zurückgegeben.
Wenn alle aktiven Transaktionen zurückgesetzt wurden oder ein Commit ausgeführt wurde, zeigt Get-Transaction die Transaktion an, die zuletzt in der Sitzung aktiv war.
Das Cmdlet "Get-Transaction" gehört zu einem Satz von Cmdlets, die das Transaktionsfeature in Windows PowerShell unterstützen. Weitere Informationen finden Sie unter "about_Transactions".
Parameter
<CommonParameters>
Dieses Cmdlet unterstützt die folgenden allgemeinen Parameter: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer und -OutVariable. Weitere Informationen finden Sie unter about_Commonparameters.
Eingaben und Ausgaben
Der Eingabetyp ist der Typ der Objekte, die über die Pipeline an das Cmdlet übergeben werden können. Der Rückgabetyp ist der Typ der Objekte, die das Cmdlet zurückgibt.
Eingaben |
Keiner Objekte können nicht über die Pipeline an dieses Cmdlet übergeben werden. |
Ausgaben |
System.Management.Automation.PSTransaction Das Cmdlet "Get-Transaction" gibt ein Objekt zurück, das die aktuelle Transaktion darstellt. |
Beispiel 1
C:\PS>start-transaction
C:\PS> get-transaction
RollbackPreference SubscriberCount Status
------------------ --------------- ------
Error 1 Active
Beschreibung
-----------
Dieser Befehl ruft mit dem Cmdlet "Get-Transaction" die aktuelle Transaktion ab.
Beispiel 2
C:\PS>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;}
Beschreibung
-----------
Dieser Befehl zeigt mit dem Cmdlet "Get-Member" die Eigenschaften und Methoden des Transaktionsobjekts an.
Beispiel 3
C:\PS>cd hklm:\software
HKLM:\SOFTWARE> Start-Transaction
HKLM:\SOFTWARE> New-Item MyCompany -UseTransaction
HKLM:\SOFTWARE> Undo-Transaction
HKLM:\SOFTWARE> Get-Transaction
RollbackPreference SubscriberCount Status
------------------ --------------- ----------
Error 0 RolledBack
Beschreibung
-----------
Dieser Befehl zeigt die Eigenschaftenwerte eines Transaktionsobjekts für eine Transaktion an, die zurückgesetzt wurde.
Beispiel 4
C:\PS>cd hklm:\software
HKLM:\SOFTWARE> Start-Transaction
HKLM:\SOFTWARE> New-Item MyCompany -UseTransaction
HKLM:\SOFTWARE> Complete-Transaction
HKLM:\SOFTWARE> Get-Transaction
RollbackPreference SubscriberCount Status
------------------ --------------- ---------
Error 1 Committed
Beschreibung
-----------
Dieser Befehl zeigt die Eigenschaftenwerte eines Transaktionsobjekts für eine Transaktion an, für die ein Commit ausgeführt wurde.
Beispiel 5
C:\PS>cd hklm:\software
HKLM:\SOFTWARE> Start-Transaction
HKLM:\SOFTWARE> New-Item MyCompany -UseTransaction
HKLM:\SOFTWARE> Start-Transaction
HKLM:\SOFTWARE> New-Item MyCompany2 -UseTransaction
HKLM:\SOFTWARE> Get-Transaction
RollbackPreference SubscriberCount Status
------------------ --------------- ------
Error 2 Active
HKLM:\SOFTWARE> Complete-Transaction
HKLM:\SOFTWARE> Get-Transaction
RollbackPreference SubscriberCount Status
------------------ --------------- ------
Error 1 Active
HKLM:\SOFTWARE> Complete-Transaction
HKLM:\SOFTWARE> Get-Transaction
RollbackPreference SubscriberCount Status
------------------ --------------- ---------
Error 1 Committed
Beschreibung
-----------
In diesem Beispiel werden die Auswirkungen auf das Transaktionsobjekt veranschaulicht, wenn eine Transaktion gestartet wird, während eine andere Transaktion ausgeführt wird. Dies geschieht normalerweise, wenn ein Skript, das eine Transaktion ausführt, eine Funktion enthält oder ein Skript aufruft, die bzw. das eine andere vollständige Transaktion enthält.
Wenn der zweite Befehl "Start-Transaction" den Independent-Parameter nicht einschließt, erstellt Start-Transaction keine neue Transaktion. Stattdessen wird der ursprünglichen Transaktion ein zweiter Abonnent hinzugefügt.
Der erste Befehl "Start-Transaction" startet die Transaktion. Der Befehl "New-Item" mit dem UseTransaction-Parameter ist Teil der Transaktion.
Der zweite Befehl "Start-Transaction" fügt der Transaktion einen Abonnenten hinzu. Der nächste Befehl "New-Item" ist ebenfalls Teil der Transaktion.
Der erste Befehl "Get-Transaction" zeigt die Transaktion mit mehreren Abonnenten an. Beachten Sie, dass die Abonnentenanzahl 2 beträgt.
Der erste Befehl "Complete-Transaction" führt keinen Commit für die Transaktion aus, die Abonnentenanzahl wird jedoch auf 1 verringert.
Der zweite Befehl "Complete-Transaction" führt einen Commit für die Transaktion aus.
Beispiel 6
C:\PS>HKLM:\SOFTWARE> Start-Transaction
HKLM:\SOFTWARE> Get-Transaction
RollbackPreference SubscriberCount IsRolledBack IsCommitted
------------------ --------------- ------------ -----------
Error 1 False False
HKLM:\SOFTWARE> Start-Transaction -Independent
HKLM:\SOFTWARE> Get-Transaction
RollbackPreference SubscriberCount IsRolledBack IsCommitted
------------------ --------------- ------------ -----------
Error 1 False False
HKLM:\SOFTWARE> Complete-Transaction
HKLM:\SOFTWARE> Get-Transaction
HKLM:\SOFTWARE> Complete-Transaction
HKLM:\SOFTWARE> Get-Transaction
Beschreibung
-----------
In diesem Beispiel werden die Auswirkungen auf das Transaktionsobjekt veranschaulicht, wenn eine unabhängige Transaktion gestartet wird, während eine andere Transaktion ausgeführt wird.
Der erste Befehl "Start-Transaction" startet die Transaktion. Der Befehl "New-Item" mit dem UseTransaction-Parameter ist Teil der Transaktion.
Der zweite Befehl "Start-Transaction" fügt der Transaktion einen Abonnenten hinzu. Der nächste Befehl "New-Item" ist ebenfalls Teil der Transaktion.
Der erste Befehl "Get-Transaction" zeigt die Transaktion mit mehreren Abonnenten an. Beachten Sie, dass die Abonnentenanzahl 2 beträgt.
Der Befehl "Complete-Transaction" verringert die Anzahl der Abonnenten auf 1, führt jedoch keinen Commit für die Transaktion aus.
Der zweite Befehl "Complete-Transaction" führt einen Commit für die Transaktion aus.
Siehe auch
Konzepte
about_Transactions
about_Providers
Start-Transaction
Complete-Transaction
Undo-Transaction
Use-Transaction