SHOW TRANSACTIONS

실행 중인 트랜잭션을 전부 나열합니다. 이 명령을 사용해 현재 사용자 또는 계정의 모든 사용자에 대한 트랜잭션을 표시할 수 있습니다.

참고 항목:

SHOW LOCKS

구문

SHOW TRANSACTIONS [ IN ACCOUNT ]
Copy

매개 변수

IN ACCOUNT

계정의 모든 사용자에 대한 모든 트랜잭션을 표시합니다. ACCOUNTADMIN 역할을 가진 사용자(즉, 계정 관리자)만 사용할 수 있습니다.

출력

명령 출력에서는 다음 열의 트랜잭션 메타데이터가 표시됩니다.

설명

id

트랜잭션 ID(부호 있는 64비트 정수)입니다.

user

현재 사용자입니다.

session

세션 ID입니다.

name

트랜잭션에 대한 사용자 정의 이름 또는 시스템에서 생성된 이름(UUID)입니다.

started_on

트랜잭션이 실행을 시작한 시점을 지정하는 타임스탬프입니다.

state

트랜잭션 상태: running.

scope

범위가 지정된 트랜잭션에서 저장 프로시저를 생성한 작업의 ID입니다. 범위가 지정되지 않은 트랜잭션의 경우 0 입니다.

사용법 노트

  • 명령 출력은 실행 중인 모든 트랜잭션에 대한 IDs를 포함합니다. 이러한 IDs는 지정된 트랜잭션을 중단하기 위해 SYSTEM$ABORT_TRANSACTION 의 입력값으로 사용할 수 있습니다.

  • 트랜잭션을 포함하는 저장 프로시저는 다른 트랜잭션 내에서 호출할 수 있습니다. 이러한 트랜잭션은 별도의 트랜잭션이지만 “범위가 지정”되어 있습니다. scope 열의 값은 두 트랜잭션이 동일한 범위에 있는지 알아내는 데 유용합니다. 자세한 내용은 범위 지정 트랜잭션 섹션을 참조하십시오.

  • 이 명령을 실행하기 위해 실행 중인 웨어하우스가 꼭 필요하지는 않습니다.

  • 이 명령은 현재 사용자의 현재 역할에 하나 이상의 액세스 권한이 부여된 오브젝트만 반환합니다.

  • MANAGE GRANTS 액세스 권한은 그 권한을 보유한 자가 계정에 있는 모든 오브젝트를 볼 수 있도록 암시적으로 허용합니다. 기본적으로, 계정 관리자(ACCOUNTADMIN 역할 이 있는 사용자)와 보안 관리자(SECURITYADMIN 역할이 있는 사용자)만 MANAGE GRANTS 권한을 가집니다.

  • 이 명령의 출력을 후처리하기 위해 파이프 연산자 (->>) 또는 RESULT_SCAN 함수를 사용할 수 있습니다. 두 구문 모두 출력을 쿼리할 수 있는 결과 세트로 간주합니다.

    For example, you can use the pipe operator or RESULT_SCAN function to select specific columns from the SHOW command output or filter the rows.

    When you refer to the output columns, use double-quoted identifiers for the column names. For example, to select the output column type, specify SELECT "type".

    You must use double-quoted identifiers because the output column names for SHOW commands are in lowercase. The double quotes ensure that the column names in the SELECT list or WHERE clause match the column names in the SHOW command output that was scanned.

  • 이 명령은 명령을 실행하는 데 사용된 역할에 대한 액세스 권한에 따라 지정된 오브젝트 유형에 대해 최대 1만 개의 레코드를 반환합니다. 필터를 적용하더라도 1만 개 레코드 제한을 초과하는 레코드는 반환되지 않습니다.

    10,000개 이상의 레코드가 존재하는 결과를 보려면 Snowflake Information Schema 에서 해당 뷰(있는 경우)를 쿼리하십시오.

이 예에서는 동일한 사용자가 두 세션을 실행 중인데, 각 세션에서 하나의 트랜잭션이 진행 중입니다.

SHOW TRANSACTIONS;
Copy
+---------------------+---------+-----------------+--------------------------------------+-------------------------------+---------+-------+
|                  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 |
+---------------------+---------+-----------------+--------------------------------------+-------------------------------+---------+-------+