DROP TYPE — 데이터 타입 제거하기

DROP TYPE — 데이터 타입 제거하기

사용자가 직접 정의한 데이터 타입(사용자 정의 타입)을 더 이상 쓰지 않게 되면 DROP TYPE으로 제거할 수 있어요. 다만 그 타입을 테이블의 컬럼 등이 참조하고 있다면, CASCADE를 쓰지 않는 한 삭제는 거부돼요.

출처: PostgreSQL 문서

본문

Synopsis (문법)

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

Description (설명)

DROP TYPE은 사용자 정의 데이터 타입을 제거해요. 타입의 소유자만 삭제할 수 있어요.

Parameters (매개변수)

  • IF EXISTS — 타입이 존재하지 않아도 오류를 내지 않아요. 이 경우에는 notice가 발행돼요.
  • name — 제거할 데이터 타입의 이름(선택적으로 스키마 한정)이에요.
  • CASCADE — 타입에 의존하는 객체(예: 테이블 컬럼, 함수, 연산자)와, 다시 그 객체들에 의존하는 모든 객체를 자동으로 삭제해요 (Section 5.15 참고).
  • RESTRICT — 타입에 의존하는 객체가 있으면 삭제를 거부해요. 이것이 기본값이에요.

Examples (예제)

데이터 타입 box를 제거해요:

DROP TYPE box;

Compatibility (호환성)

이 명령은 IF EXISTS 옵션이 PostgreSQL 확장이라는 점을 빼면 SQL 표준의 해당 명령과 유사해요. 다만 PostgreSQL에서 CREATE TYPE 명령과 데이터 타입 확장 메커니즘의 상당 부분이 SQL 표준과 다르다는 점을 기억해 두세요.

더 알아보기 (Learn more)

  • 데이터 타입을 만들 때 쓰는 CREATE TYPE 명령
  • 데이터 타입 정의를 바꾸는 ALTER TYPE 명령
  • PostgreSQL 사용자 정의 타입 개념