SHOW TRANSACTIONS

SHOW TRANSACTIONS

실행 중인 모든 트랜잭션(transaction)을 나열하는 명령이에요. 현재 사용자 또는 계정의 모든 사용자의 트랜잭션을 표시할 수 있어요.

출처: 문서

본문

실행 중인 모든 트랜잭션을 나열해요. 이 명령을 사용해 현재 사용자 또는 계정의 모든 사용자의 트랜잭션을 표시할 수 있어요.

구문

SHOW TRANSACTIONS [ IN ACCOUNT ]

매개변수

IN ACCOUNT

계정의 모든 사용자에 걸친 모든 트랜잭션을 표시해요. ACCOUNTADMIN 역할(즉 계정 관리자)을 가진 사용자만 사용할 수 있어요.

출력

명령 출력은 트랜잭션 메타데이터를 다음 컬럼으로 보여 줘요:

컬럼 설명
id 트랜잭션 ID(부호 있는 64비트 정수)예요.
user 현재 사용자예요.
session 세션 ID예요.
name 트랜잭션의 사용자 정의 이름 또는 시스템 생성 이름(UUID)이에요.
started_on 트랜잭션이 실행을 시작한 시각을 지정하는 타임스탬프예요.
state 트랜잭션 상태예요: running.
scope 스코프(범위) 트랜잭션에서 저장 프로시저를 만든 작업의 ID예요. 비-스코프 트랜잭션에는 0이에요.

사용 메모

  • 명령 출력에는 실행 중인 모든 트랜잭션의 ID가 포함돼요. 이 ID는 지정된 트랜잭션을 중단하기 위해 SYSTEM$ABORT_TRANSACTION에 입력으로 사용할 수 있어요.
  • 트랜잭션을 포함하는 저장 프로시저를 다른 트랜잭션 안에서 호출할 수 있어요. 이 트랜잭션들은 별개이지만 "스코프"가 있지요. scope 컬럼의 값은 두 트랜잭션이 같은 스코프에 있는지 알아내는 데 유용해요. 자세한 내용은 스코프 트랜잭션(Scoped transactions)을 참고해요.
  • 이 명령은 실행에 웨어하우스가 필요하지 않아요.
  • 이 명령은 현재 사용자의 현재 역할에 액세스 권한이 하나 이상 부여된 객체만 반환해요.
  • MANAGE GRANTS 액세스 권한은 보유자에게 계정의 모든 객체를 볼 수 있는 권한을 암묵적으로 부여해요. 기본적으로 계정 관리자(ACCOUNTADMIN 역할)와 보안 관리자(SECURITYADMIN 역할)만 MANAGE GRANTS 권한을 가져요.
  • 이 명령의 출력을 후처리하려면 파이프 연산자(->>)나 RESULT_SCAN 함수를 사용할 수 있어요. 두 구성 모두 출력을 쿼리할 수 있는 결과 집합으로 취급해요. 예를 들어 SHOW 명령 출력에서 특정 컬럼을 선택하거나 행을 필터링할 수 있어요.
  • 출력 컬럼을 참조할 때는 큰따옴표로 묶은 식별자를 사용해요. 예를 들어 type 출력 컬럼을 선택하려면 SELECT "type"이라고 지정해요. SHOW 명령의 출력 컬럼 이름은 소문자이므로 큰따옴표로 묶은 식별자를 사용해야 해요.
  • 이 명령은 명령을 실행하는 역할의 액세스 권한에 따라 지정한 객체 유형에 대해 최대 1만 개의 레코드를 반환해요. 1만 개를 초과하는 결과를 보려면 Snowflake 정보 스키마의 해당 뷰(존재하는 경우)를 쿼리해요.

예제

이 예제에서 같은 사용자가 두 세션을 실행 중이고, 각 세션에 트랜잭션 하나가 진행 중이에요.

SHOW TRANSACTIONS;
+---------------------+---------+-----------------+--------------------------------------+-------------------------------+---------+-------+
|                  id | user    |         session | name                                 | started_on                    | state   | scope |
|---------------------+---------+-----------------+--------------------------------------+-------------------------------+---------+-------|
| 1721165674582000000 | CALIBAN | 186457423713330 | 551f494d-90ed-438d-b32b-1161396c3a22 | 2024-07-16 14:34:34.582 -0700 | running |     0 |
| 1721165584820000000 | CALIBAN | 186457423749354 | a092aa44-9a0a-4955-9659-123b35c0efeb | 2024-07-16 14:33:04.820 -0700 | running |     0 |
+---------------------+---------+-----------------+--------------------------------------+-------------------------------+---------+-------+

더 알아보기 (Learn more)