SHOW EVENT TABLES
SHOW EVENT TABLES
SHOW EVENT TABLES 명령은 접근 권한(privilege)이 있는 이벤트 테이블(event table) 목록을 보여주는 명령이에요. Time Travel 보존 기간 안에 있어 취소(undrop)할 수 있는 삭제된 테이블도 포함돼요. 현재/지정한 데이터베이스·스키마 또는 계정 전체의 이벤트 테이블을 나열할 수 있어요.
출처: 문서
본문
이 명령은 접근 권한이 있는 이벤트 테이블을 나열해요. 출력은 데이터베이스, 스키마, 이벤트 테이블 이름 기준 사전 순으로 정렬된 테이블 메타데이터와 속성을 반환해요.
관련 명령: CREATE EVENT TABLE, ALTER TABLE (이벤트 테이블), DROP TABLE, UNDROP TABLE, TABLES 뷰 (Information Schema).
구문 (Syntax)
SHOW [ TERSE ] EVENT TABLES [ LIKE '<pattern>' ]
[ IN { ACCOUNT | DATABASE [ <db_name> ] | SCHEMA [ <schema_name> ] } ]
[ STARTS WITH '<name_string>' ]
[ LIMIT <rows> [ FROM '<name_string>' ] ]
파라미터 (Parameters)
-
TERSE — 출력 컬럼의 일부만 선택적으로 반환해요:
created_on,name,database_name,schema_name. 기본값: 없음 (모든 컬럼 포함). -
LIKE
<pattern>— 명령 출력을 객체 이름으로 필터링해요. 대소문자를 구분하지 않는 패턴 매칭이며 SQL 와일드카드 문자(%와_)를 지원해요. 기본값: 없음. -
IN {
ACCOUNT|DATABASE[<db_name>] |SCHEMA[<schema_name>] } — 명령의 범위를 지정해요:ACCOUNT— 현재 계정의 모든 데이터베이스의 모든 스키마 레코드 반환.DATABASE— 지정한 데이터베이스(db_name지정 시) 또는 현재 데이터베이스의 모든 스키마 레코드 반환. 정규화된 스키마 이름(예:my_database.my_schema)이면 해당 데이터베이스·스키마 레코드를 반환해요.SCHEMA— 현재 또는 지정한 스키마의 레코드 반환.- 기본값: 세션에 현재 데이터베이스가 있는지에 따라 달라져요. 데이터베이스 있으면
DATABASE가 기본(현재 데이터베이스에서 볼 권한이 있는 객체 반환), 없으면ACCOUNT가 기본.
-
STARTS WITH
<name_string>— 객체 이름의 시작 문자를 기준으로 출력을 필터링해요. 문자열은 작은따옴표로 묶어야 하며 대소문자를 구분해요. -
LIMIT
<rows>[ FROM<name_string>] — 최대 행 수를 제한하면서 결과의 "페이지네이션"을 가능하게 해요.FROM '<name_string>'하위 절은 결과의 "커서" 역할을 해요. 문자열은 작은따옴표로 묶어야 하며 대소문자를 구분하고, 부분 이름이 지원돼요.참고:
STARTS WITH와FROM절을 모두 지원하는 SHOW 명령에서는 두 절을 같은 문장에서 결합할 수 있어요. 다만 두 조건이 모두 충족되어야 하며, 그렇지 않으면 서로 상쇄되어 결과가 반환되지 않아요. 객체는 이름 기준 사전 순으로 반환됩니다.
출력 (Output)
명령 출력은 이벤트 테이블 속성과 메타데이터를 다음 컬럼으로 제공해요:
- created_on — 이벤트 테이블이 생성된 날짜·시간.
- name — 이벤트 테이블 이름.
- database_name — 이벤트 테이블이 저장된 데이터베이스.
- schema_name — 이벤트 테이블이 저장된 스키마.
- owner — 이벤트 테이블을 소유한 역할.
- comment — 이벤트 테이블에 대한 주석.
- owner_role_type — 객체를 소유한 역할 유형(예:
ROLE). Snowflake Native App이 객체를 소유하면APPLICATION. 객체가 삭제되면 소유자 역할이 없으므로 NULL.
이벤트 테이블에 대해 지정할 수 있는 속성에 대한 자세한 내용은 CREATE EVENT TABLE을 참고해요.
사용 참고 사항 (Usage notes)
- 계정(또는 데이터베이스·스키마)에 이벤트 테이블이 많으면 전체 계정(또는 테이블·스키마)을 검색할 때 상당한 컴퓨트 리소스가 소모될 수 있어요.
- 실행에 실행 중인 웨어하우스를 요구하지 않아요.
- 현재 역할에 하나 이상의 접근 권한이 부여된 객체만 반환해요.
MANAGE GRANTS권한은 보유자가 계정의 모든 객체를 볼 수 있게 해줘요. 기본적으로 ACCOUNTADMIN과 SECURITYADMIN 역할만 이 권한을 가져요.- 출력을 후처리하려면 파이프 연산자(
|>) 또는RESULT_SCAN함수를 사용할 수 있어요. 출력 컬럼을 참조할 때는 컬럼 이름을 큰따옴표로 감싸서 사용해요. LIMIT rows의 값은10000을 초과할 수 없어요.LIMIT rows를 생략하면 결과 집합이 1만 행보다 크면 오류가 발생해요.
예제 (Examples)
tpch.public 스키마에서 볼 권한이 있고 이름이 mylogs로 시작하는 모든 이벤트 테이블을 표시해요:
SHOW EVENT TABLES LIKE 'mylogs%' IN tpch.public;
더 알아보기 (Learn more)
- CREATE EVENT TABLE — 이벤트 테이블 만들기
- ALTER TABLE (이벤트 테이블) — 이벤트 테이블 수정
- DROP TABLE — 테이블 삭제