Compartilhar via


Get-Transaction

Obtém a transação (ativa) atual.

Sintaxe

Get-Transaction [<CommonParameters>]

Descrição

O cmdlet Get-Transaction obtém um objeto que representa a transação atual na sessão.

Este cmdlet nunca retorna mais do que um objeto, porque apenas uma transação fica 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 será ela que Get-Transaction retornará.

Quando todas as transações ativas estão revertidas ou confirmadas, Get-Transaction mostra a transação que era a transação ativa mais recente na sessão.

O cmdlet Get-Transaction 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.

Parâmetros

<CommonParameters>

Esse cmdlet oferece suporte aos parâmetros comuns: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer e -OutVariable. Para obter mais informações, consulte about_Commonparameters.

Entradas e saídas

O tipo de entrada é o tipo dos objetos que você pode canalizar para o cmdlet. O tipo de retorno é o tipo dos objetos que o cmdlet retorna.

Entradas

Nenhum

Você não pode canalizar objetos para este cmdlet.

Saídas

System.Management.Automation.PSTransaction

Get-Transaction retorna um objeto que representa a transação atual.

Exemplo 1

C:\PS>start-transaction

C:\PS> get-transaction 

RollbackPreference   SubscriberCount   Status
------------------   ---------------   ------
Error                1                 Active

Descrição
-----------
Esse comando usa o cmdlet Get-Transaction para obter a transação atual.





Exemplo 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;}

Descrição
-----------
Esse comando usa o cmdlet Get-Member para mostrar as propriedades e os métodos do objeto de transação.





Exemplo 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

Descrição
-----------
Esse comando mostra os valores de propriedade de um objeto de transação para uma transação revertida.





Exemplo 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

Descrição
-----------
Esse comando mostra os valores de propriedade de um objeto de transação para uma transação confirmada.





Exemplo 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

Descrição
-----------
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 comando Start-Transaction inclua o parâmetro Independent, Start-Transaction não cria uma nova transação. Em vez disso, ele adiciona um segundo assinante à transação original. 

O primeiro comando Start-Transaction inicia a transação. Um comando New-Item com o parâmetro UseTransaction faz parte da transação.

Um segundo comando Start-Transaction adiciona um assinante à transação. O próximo comando New-Item 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 a 1.

O segundo comando Complete-Transaction confirma a transação.





Exemplo 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

Descrição
-----------
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 comando Start-Transaction inicia a transação. Um comando New-Item com o parâmetro UseTransaction faz parte da transação.

Um segundo comando Start-Transaction adiciona um assinante à transação. O próximo comando New-Item 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 comando Complete-Transaction reduz a contagem de assinantes a 1, mas não confirma a transação.

O segundo comando Complete-Transaction confirma a transação.





Consulte também

Conceitos

about_Transactions
about_Providers
Start-Transaction
Complete-Transaction
Undo-Transaction
Use-Transaction