SHOW DCM PROJECTS

SHOW DCM PROJECTS

SHOW DCM PROJECTS 명령은 최소 READ 권한(privilege)이 있는 DCM 프로젝트 목록을 보여주는 명령이에요. Snowflake에서 관리하는 DCM(Data Clean Room) 프로젝트들을 확인할 때 사용해요.

출처: 문서

본문

이 명령은 최소 READ 권한이 있는 DCM 프로젝트를 나열해요. 세션의 현재 데이터베이스·스키마, 지정한 데이터베이스·스키마, 또는 전체 계정의 객체를 나열할 수 있어요. 각 객체의 메타데이터와 속성이 출력에 포함되며, 객체는 데이터베이스, 스키마, 객체 이름 기준 사전 순으로 정렬돼요.

관련 명령: CREATE DCM PROJECT, ALTER DCM PROJECT, DESCRIBE DCM PROJECT, DROP DCM PROJECT, EXECUTE DCM PROJECT, SHOW DEPLOYMENTS IN DCM PROJECT.

구문 (Syntax)

SHOW [ TERSE ] DCM PROJECTS [ LIKE '<pattern>' ]
           [ IN
                {
                  ACCOUNT                  |

                  DATABASE                 |
                  DATABASE <database_name> |

                  SCHEMA                   |
                  SCHEMA <schema_name>     |
                  <schema_name>
                }
           ]
           [ LIMIT <rows> ]

필수 파라미터 (Required parameters)

없음.

선택 파라미터 (Optional parameters)

  • TERSE — 출력 컬럼의 일부만 선택적으로 반환해요: created_on, name, kind, database_name, schema_name. 기본값: 없음 (모든 컬럼 포함).

  • LIKE <pattern> — 명령 출력을 객체 이름으로 필터링해요. 대소문자를 구분하지 않는 패턴 매칭이며 SQL 와일드카드 문자(%_)를 지원해요. 기본값: 없음.

  • [ IN ... ] — 명령의 범위를 선택적으로 지정해요:

    • ACCOUNT — 전체 계정의 레코드 반환.
    • DATABASE 또는 DATABASE db_name — 현재 또는 지정한 데이터베이스의 레코드 반환.
    • SCHEMA 또는 SCHEMA schema_name — 현재 또는 지정한 스키마의 레코드 반환.
    • IN ...을 생략하면 범위는 세션의 현재 데이터베이스 유무에 따라 달라져요: 있으면 IN DATABASE와 같은 효과, 없으면 IN ACCOUNT와 같은 효과.
  • LIMIT <rows> — 반환되는 최대 행 수를 제한해요.

접근 제어 요구 사항 (Access control requirements)

이 작업을 실행하는 역할은 최소한 다음 권한을 가져야 해요:

권한 (Privilege) 객체 (Object)
READ DCM 프로젝트

스키마의 객체를 조작하려면 상위 데이터베이스에 최소 하나, 상위 스키마에 최소 하나의 권한이 필요해요.

출력 (Output)

명령 출력은 객체의 속성과 메타데이터를 설명하는 다음 컬럼을 포함해요:

  • created_on — DCM 프로젝트가 생성된 날짜·시간.
  • name — DCM 프로젝트 이름.
  • database_name — DCM 프로젝트가 저장된 데이터베이스.
  • schema_name — DCM 프로젝트가 저장된 스키마.
  • comment — DCM 프로젝트에 대한 주석.
  • owner — DCM 프로젝트를 소유한 역할.
  • kind — 항상 DCM Project.
  • last_executed_deployment_time — 마지막으로 실행된 배포의 타임스탬프.

사용 참고 사항 (Usage notes)

  • 실행에 실행 중인 웨어하우스를 요구하지 않아요.
  • 현재 역할에 하나 이상의 접근 권한이 부여된 객체만 반환해요.
  • MANAGE GRANTS 권한은 보유자가 계정의 모든 객체를 볼 수 있게 해줘요. 기본적으로 ACCOUNTADMIN과 SECURITYADMIN 역할만 이 권한을 가져요.
  • 출력을 후처리하려면 파이프 연산자(|>) 또는 RESULT_SCAN 함수를 사용할 수 있어요. 출력 컬럼을 참조할 때는 컬럼 이름을 큰따옴표로 감싸서 사용해요.
  • 명령은 최대 1만 개의 레코드를 반환해요. 1만 개가 넘는 결과는 필터를 적용해도 반환되지 않아요.
  • 스키마 수준 객체에 대해 명령을 실행하면, 현재 역할이 상위 데이터베이스와 스키마에 최소 하나의 권한을 가진 경우에만 객체가 반환돼요.

예제 (Examples)

mydb 데이터베이스의 PUBLIC 스키마에서 볼 권한이 있는 DCM 프로젝트를 나열해요:

USE DATABASE mydb;

SHOW DCM PROJECTS IN SCHEMA PUBLIC;

my_db 데이터베이스의 DCM 프로젝트를 나열해요:

SHOW DCM PROJECTS IN DATABASE my_db;

이름이 my_로 시작하는 DCM 프로젝트를 나열해요:

SHOW DCM PROJECTS LIKE 'my_%';

더 알아보기 (Learn more)