현재(활성) 트랜잭션을 가져옵니다.
구문
Get-Transaction [<CommonParameters>]
설명
Get-Transaction cmdlet은 세션의 현재 트랜잭션을 나타내는 개체를 가져옵니다.
활성 트랜잭션은 한 번에 하나만 있을 수 있기 때문에 이 cmdlet은 개체를 하나만 반환합니다. Start-Transaction의 Independent 매개 변수를 사용하여 독립 트랜잭션을 하나 이상 시작하는 경우 가장 최근에 시작한 트랜잭션이 활성 트랜잭션이기 때문에 Get-Transaction은 이 트랜잭션을 반환합니다.
모든 활성 트랜잭션이 롤백되거나 커밋된 경우 Get-Transaction은 세션에서 가장 최근에 활성 상태였던 트랜잭션을 보여 줍니다.
Get-Transaction cmdlet은 Windows PowerShell의 트랜잭션 기능을 지원하는 cmdlet 집합 중 하나입니다. 자세한 내용은 about_Transactions를 참조하십시오.
매개 변수
<CommonParameters>
이 cmdlet은 -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer, -OutVariable 등의 일반 매개 변수를 지원합니다. 자세한 내용은 about_Commonparameters.
입력 및 출력
입력 유형은 cmdlet으로 파이프할 수 있는 개체의 유형입니다. 반환 유형은 cmdlet에서 반환되는 개체의 유형입니다.
입력 |
없음 개체를 이 cmdlet으로 파이프할 수 없습니다. |
출력 |
System.Management.Automation.PSTransaction Get-Transaction은 현재 트랜잭션을 나타내는 개체를 반환합니다. |
예 1
C:\PS>start-transaction C:\PS> get-transaction RollbackPreference SubscriberCount Status ------------------ --------------- ------ Error 1 Active 설명 ----------- 이 명령은 Get-Transaction cmdlet을 사용하여 현재 트랜잭션을 가져옵니다.
예 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;} 설명 ----------- 이 명령은 Get-Member cmdlet을 사용하여 트랜잭션 개체의 속성과 메서드를 표시합니다.
예 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 설명 ----------- 이 명령은 롤백된 트랜잭션의 트랜잭션 개체 속성 값을 표시합니다.
예 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 설명 ----------- 이 명령은 커밋된 트랜잭션의 트랜잭션 개체 속성 값을 표시합니다.
예 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 설명 ----------- 이 예에서는 다른 트랜잭션 진행 중 트랜잭션을 시작할 경우 트랜잭션 개체가 받는 영향을 보여 줍니다. 일반적으로 이는 트랜잭션을 실행하는 스크립트에 함수가 포함되어 있거나 완료된 다른 트랜잭션에 포함된 스크립트를 호출하는 경우 발생합니다. 두 번째 Start-Transaction 명령에 Independent 매개 변수가 포함되어 있지 않으면 Start-Transaction은 새 트랜잭션을 만들지 않고 대신 원래 트랜잭션에 두 번째 가입자를 추가합니다. 첫 번째 Start-Transaction 명령은 트랜잭션을 시작합니다. UseTransaction 매개 변수가 있는 New-Item 명령은 트랜잭션의 일부입니다. 두 번째 Start-Transaction 명령은 트랜잭션에 가입자를 추가합니다. 다음 New-Item 명령도 트랜잭션의 일부입니다. 첫 번째 Get-Transaction 명령은 다중 가입자 트랜잭션을 표시합니다. 가입자 개수는 2입니다. 첫 번째 Complete-Transaction 명령은 트랜잭션을 커밋하지 않지만 가입자 개수를 1로 줄입니다. 두 번째 Complete-Transaction 명령은 트랜잭션을 커밋합니다.
예 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 설명 ----------- 이 예에서는 다른 트랜잭션 진행 중 독립 트랜잭션을 시작할 경우 트랜잭션 개체가 받는 영향을 보여 줍니다. 첫 번째 Start-Transaction 명령은 트랜잭션을 시작합니다. UseTransaction 매개 변수가 있는 New-Item 명령은 트랜잭션의 일부입니다. 두 번째 Start-Transaction 명령은 트랜잭션에 가입자를 추가합니다. 다음 New-Item 명령도 트랜잭션의 일부입니다. 첫 번째 Get-Transaction 명령은 다중 가입자 트랜잭션을 표시합니다. 가입자 개수는 2입니다. Complete-Transaction 명령은 가입자 개수를 1로 줄이지만 트랜잭션을 커밋하지는 않습니다. 두 번째 Complete-Transaction 명령은 트랜잭션을 커밋합니다.
참고 항목