DROP SCHEMA — 스키마 삭제하기

DROP SCHEMA — 스키마 삭제하기

DROP SCHEMA은 데이터베이스에서 스키마를 제거하는 명령이에요. 스키마는 소유자나 슈퍼유저만 삭제할 수 있습니다. 스키마 안에 객체가 들어 있다면 기본값(RESTRICT)에서는 삭제를 거부하므로, 안의 것을 통째로 지우고 싶을 때는 CASCADE를 써야 해요.

출처: PostgreSQL 문서

본문

Synopsis

DROP SCHEMA [ IF EXISTS ] name [, ...] [ CASCADE | RESTRICT ]

Description

DROP SCHEMA은 데이터베이스에서 스키마를 제거해요.

스키마는 소유자 또는 슈퍼유저만 삭제할 수 있어요. 소유자는 스키마 안의 일부 객체를 소유하지 않더라도 그 스키마(그리고 그 안의 모든 객체)를 삭제할 수 있다는 점을 참고하세요.

Parameters

  • IF EXISTS — 스키마가 존재하지 않아도 오류를 던지지 않아요. 이 경우에는 통지(notice)만 발행됩니다.
  • name — 스키마의 이름.
  • CASCADE — 스키마에 포함된 객체(테이블, 함수 등)와, 나아가 그 객체들에 의존하는 모든 객체를 자동으로 함께 삭제해요 (5.15절 참고).
  • RESTRICT — 스키마에 객체가 포함되어 있으면 삭제를 거부해요. 이게 기본값이에요.

Notes

CASCADE 옵션을 쓰면 명령이 지정된 스키마 외의 다른 스키마에 있는 객체까지 제거할 수 있어요.

Examples

mystuff 스키마와 그 안의 모든 것을 데이터베이스에서 제거하려면:

DROP SCHEMA mystuff CASCADE;

Compatibility

DROP SCHEMA은 SQL 표준을 따르지만, 다음 두 가지 차이가 있어요. 표준은 명령 하나로 스키마를 하나만 삭제할 수 있고, PostgreSQL 확장인 IF EXISTS 옵션 정도가 다릅니다.

더 알아보기 (Learn more)