Get-Transaction
Obtém a transação atual (ativa).
Syntax
Get-Transaction []
Description
O Get-Transaction
cmdlet obtém um objeto que representa a transação atual na sessão.
Esse cmdlet nunca retorna mais de um objeto, porque apenas uma transação está ativa de cada vez. Se você iniciar uma ou mais transações independentes (usando o parâmetro Independent de Start-Transaction), a transação iniciada mais recentemente estará ativa, e essa é a transação que Get-Transaction
retorna.
Quando todas as transações ativas tiverem sido revertidas ou confirmadas, este cmdlet mostra a transação que esteve ativa mais recentemente na sessão.
Este cmdlet faz parte de um conjunto de cmdlets que dão suporte ao recurso de transações no Windows PowerShell. Para obter mais informações, consulte about_Transactions.
Exemplos
Exemplo 1: Obter a transação atual
Start-Transaction
Get-Transaction
RollbackPreference SubscriberCount Status
------------------ --------------- ------
Error 1 Active
Este comando usa o Get-Transaction
cmdlet para obter a transação atual.
Exemplo 2: Mostrar as propriedades e os métodos do objeto de transação
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;}
Este comando usa o Get-Member
cmdlet para mostrar as propriedades e os métodos do objeto de transação.
Exemplo 3: Mostrar os valores de propriedade de uma transação revertida
Set-Location hklm:\software
Start-Transaction
New-Item MyCompany -UseTransaction
Undo-Transaction
Get-Transaction
RollbackPreference SubscriberCount Status
------------------ --------------- ----------
Error 0 RolledBack
Este comando mostra os valores de propriedade de um objeto de transação para uma transação que foi revertida.
Exemplo 4: Mostrar os valores de propriedade de uma transação confirmada
Set-Location hklm:\software
Start-Transaction
New-Item MyCompany -UseTransaction
Complete-Transaction
Get-Transaction
RollbackPreference SubscriberCount Status
------------------ --------------- ---------
Error 1 Committed
Este comando mostra os valores de propriedade de um objeto de transação para uma transação que foi confirmada.
Exemplo 5: Iniciar uma transação enquanto outra está em andamento
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
Este exemplo mostra o efeito no objeto de transação de iniciar uma transação enquanto outra transação está em andamento. Normalmente, isso acontece quando um script que executa uma transação inclui uma função ou chama um script que contém outra transação completa.
A menos que o segundo Start-Transaction
comando inclua o parâmetro Independent , Start-Transaction
não cria uma nova transação. Em vez disso, adiciona um segundo assinante à transação original.
O primeiro Start-Transaction
comando inicia a transação. Um comando New-Item com o parâmetro UseTransaction faz parte da transação.
Um segundo Start-Transaction
comando adiciona um assinante à transação. O próximo New-Item
comando também faz parte da transação.
O primeiro Get-Transaction
comando mostra a transação de vários assinantes.
Observe que a contagem de assinantes é 2.
O primeiro comando Complete-Transaction não confirma a transação, mas reduz a contagem de assinantes para 1.
O segundo Complete-Transaction
comando confirma a transação.
Exemplo 6: Iniciar uma transação independente enquanto outra está em andamento
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
Este exemplo mostra o efeito no objeto de transação de iniciar uma transação independente enquanto outra transação está em andamento.
O primeiro Start-Transaction
comando inicia a transação. Um New-Item
comando com o parâmetro UseTransaction faz parte da transação.
Um segundo Start-Transaction
comando adiciona um assinante à transação. O próximo New-Item
comando também faz parte da transação.
O primeiro Get-Transaction
comando mostra a transação de vários assinantes. Observe que a contagem de assinantes é 2.
O Complete-Transaction
comando reduz a contagem de assinantes para 1, mas não confirma a transação.
O segundo Complete-Transaction
comando confirma a transação.
Entradas
None
Não é possível canalizar objetos para este cmdlet.
Saídas
Este cmdlet retorna um objeto que representa a transação atual.
Ligações Relacionadas
Comentários
https://aka.ms/ContentUserFeedback.
Brevemente: Ao longo de 2024, vamos descontinuar progressivamente o GitHub Issues como mecanismo de feedback para conteúdos e substituí-lo por um novo sistema de feedback. Para obter mais informações, veja:Submeter e ver comentários