DROP SCHEMA¶
현재/지정된 데이터베이스에서 스키마를 제거합니다.
- 참고 항목:
CREATE SCHEMA , ALTER SCHEMA , DESCRIBE SCHEMA , SHOW SCHEMAS , UNDROP SCHEMA
구문¶
DROP SCHEMA [ IF EXISTS ] <name> [ CASCADE | RESTRICT ]
매개 변수¶
name
삭제할 스키마의 식별자를 지정합니다. 식별자에 공백, 특수 문자 또는 대/소문자가 혼합된 문자가 포함된 경우 전체 문자열을 큰따옴표로 묶어야 합니다. 큰따옴표로 묶인 식별자도 대/소문자를 구분합니다.
스키마 식별자가 (
db_name.schema_name
형식으로) 정규화되지 않은 경우 이 명령은 세션의 현재 데이터베이스에서 스키마를 찾습니다.CASCADE | RESTRICT
스키마에 있는 임의의 테이블을 참조하는 외래 키가 있는 경우 스키마를 삭제할 수 있는지 여부를 지정합니다.
CASCADE
는 다른 테이블의 외래 키가 참조하는 기본/고유 키가 있는 테이블을 포함하여 스키마와 스키마의 모든 오브젝트를 삭제합니다.RESTRICT
는 기존 외래 키 참조에 대한 경고를 반환하고 스키마를 삭제하지 않습니다.
기본값:
CASCADE
사용법 노트¶
스키마를 삭제해도 시스템에서 영구적으로 제거되지는 않습니다. 삭제된 스키마의 버전은 스키마에 대한
DATA_RETENTION_TIME_IN_DAYS
매개 변수로 지정된 일수 동안 Time Travel 에 보존됩니다.Time Travel 보존 기간 이내에, UNDROP SCHEMA 명령을 사용하여 삭제된 스키마를 복원할 수 있습니다.
Time Travel 보존 기간이 끝날 때, 삭제된 스키마의 다음 상태는 이 스키마가 영구적인지 일시적인지에 따라 달라집니다.
영구 스키마는 Fail-safe 로 이동합니다. Fail-safe(7일)에서는 삭제된 스키마를 복구할 수 있지만, Snowflake에서만 가능합니다. 스키마가 Fail-safe 상태를 벗어나면 제거됩니다.
일시적 스키마는 Fail-safe가 없으므로, Time Travel에서 벗어날 때 제거됩니다.
삭제된 스키마는 제거된 후에는 복구할 수 없으며, 다시 만들어야 합니다.
현재, 스키마를 삭제할 때 하위 테이블의 데이터 보존 기간을 스키마의 보존 기간과 다르게 명시적으로 설정했다면 이 데이터 보존 기간 역시 허용되지 않습니다. 하위 테이블은 스키마와 같은 기간 동안 보존됩니다. 이러한 테이블의 데이터 보존 기간을 적용하려면 해당 오브젝트를 명시적으로 삭제한 후 스키마를 삭제하십시오.
스키마를 삭제한 후, 같은 이름의 스키마를 만들면 새 버전의 스키마가 생성됩니다. 이전 스키마의 삭제된 버전은 여전히 다음 방법을 사용해 복원할 수 있습니다.
현재 버전의 스키마 이름을 다른 이름으로 바꿉니다.
UNDROP SCHEMA 명령을 사용하여 이전 버전을 복원합니다.
정책 또는 태그가 테이블 또는 뷰 열에 연결되는 경우 스키마를 성공적으로 삭제하려면 데이터베이스와 스키마 내에서 정책 또는 태그가 자급식이 되도록 해야 합니다. 예를 들어,
database_1
은policy_1
을 포함하고policy_1
은database_1
에서만 사용됩니다. 그렇지 않으면 허상 참조 가 발생합니다.세션 정책 또는 비밀번호 정책이 사용자 또는 계정에 설정된 경우 DROP 작업이 실패합니다.
예¶
(CREATE SCHEMA 예에서) myschema
로 명명된 스키마 삭제하기:
DROP SCHEMA myschema; +--------------------------------+ | status | |--------------------------------| | MYSCHEMA successfully dropped. | +--------------------------------+ SHOW SCHEMAS; +---------------------------------+--------------------+------------+------------+---------------+--------+-----------------------------------------------------------+---------+----------------+ | created_on | name | is_default | is_current | database_name | owner | comment | options | retention_time | |---------------------------------+--------------------+------------+------------+---------------+--------+-----------------------------------------------------------+---------+----------------| | Fri, 13 May 2016 17:26:07 -0700 | INFORMATION_SCHEMA | N | N | MYTESTDB | | Views describing the contents of schemas in this database | | 1 | | Tue, 17 Mar 2015 16:57:04 -0700 | PUBLIC | N | Y | MYTESTDB | PUBLIC | | | 1 | +---------------------------------+--------------------+------------+------------+---------------+--------+-----------------------------------------------------------+---------+----------------+