Get-Transaction
Získá aktuální (aktivní) transakce.
Syntaxe
Get-Transaction []
Description
Rutina Get-Transaction
získá objekt, který představuje aktuální transakci v relaci.
Tato rutina nikdy nevrací více než jeden objekt, protože najednou je aktivní pouze jedna transakce. Pokud spustíte jednu nebo více nezávislých transakcí (pomocí nezávislého parametru Start-Transaction), je poslední spuštěná transakce aktivní a to je transakce, která Get-Transaction
vrací.
Pokud byly všechny aktivní transakce vráceny zpět nebo potvrzeny, tato rutina zobrazí transakci, která byla naposledy aktivní v relaci.
Tato rutina je jednou ze sady rutin, které podporují funkci transakcí ve Windows PowerShellu. Další informace najdete v tématu about_Transactions.
Příklady
Příklad 1: Získání aktuální transakce
Start-Transaction
Get-Transaction
RollbackPreference SubscriberCount Status
------------------ --------------- ------
Error 1 Active
Tento příkaz používá rutinu Get-Transaction
k získání aktuální transakce.
Příklad 2: Zobrazení vlastností a metod objektu transakce
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;}
Tento příkaz používá rutinu Get-Member
k zobrazení vlastností a metod objektu transakce.
Příklad 3: Zobrazení hodnot vlastností vrácené transakce
Set-Location hklm:\software
Start-Transaction
New-Item MyCompany -UseTransaction
Undo-Transaction
Get-Transaction
RollbackPreference SubscriberCount Status
------------------ --------------- ----------
Error 0 RolledBack
Tento příkaz zobrazuje hodnoty vlastností objektu transakce pro transakci, která byla vrácena zpět.
Příklad 4: Zobrazení hodnot vlastností potvrzené transakce
Set-Location hklm:\software
Start-Transaction
New-Item MyCompany -UseTransaction
Complete-Transaction
Get-Transaction
RollbackPreference SubscriberCount Status
------------------ --------------- ---------
Error 1 Committed
Tento příkaz zobrazí hodnoty vlastností objektu transakce pro transakce, která byla potvrzena.
Příklad 5: Spuštění transakce, zatímco probíhá jiná
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
Tento příklad ukazuje účinek na objekt transakce spuštění transakce, zatímco probíhá jiná transakce. K tomu obvykle dochází v případě, že skript, který spouští transakci, obsahuje funkci nebo volá skript, který obsahuje jinou úplnou transakci.
Pokud druhý Start-Transaction
příkaz neobsahuje nezávislý parametr, Start-Transaction
nevytvoří novou transakci. Místo toho přidá k původní transakci druhý odběratel.
První Start-Transaction
příkaz spustí transakci. Příkaz New-Item s parametrem UseTransaction je součástí transakce.
Druhý Start-Transaction
příkaz přidá odběratele transakce. Další New-Item
příkaz je také součástí transakce.
První Get-Transaction
příkaz zobrazí transakci s více předplatiteli.
Všimněte si, že počet odběratelů je 2.
První příkaz Complete-Transaction neaktoruje transakci, ale snižuje počet odběratelů na 1.
Druhý Complete-Transaction
příkaz potvrdí transakci.
Příklad 6: Spuštění nezávislé transakce, zatímco probíhá jiná
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
Tento příklad ukazuje účinek na objekt transakce spuštění nezávislé transakce, zatímco probíhá jiná transakce.
První Start-Transaction
příkaz spustí transakci. Příkaz New-Item
s parametrem UseTransaction je součástí transakce.
Druhý Start-Transaction
příkaz přidá odběratele transakce. Další New-Item
příkaz je také součástí transakce.
První Get-Transaction
příkaz zobrazí transakci s více předplatiteli. Všimněte si, že počet odběratelů je 2.
Příkaz Complete-Transaction
sníží počet odběratelů na 1, ale ne potvrzení transakce.
Druhý Complete-Transaction
příkaz potvrdí transakci.
Vstupy
None
Do této rutiny nelze vést objekty.
Výstupy
Tato rutina vrátí objekt, který představuje aktuální transakci.