DROP TRIGGER — 트리거 제거하기

DROP TRIGGER — 트리거 제거하기

테이블에 걸어둔 트리거(trigger)를 지우는 명령이 DROP TRIGGER예요. 트리거는 특정 테이블에 귀속되기 때문에, 이 명령을 쓸 때는 트리거 이름과 함께 대상 테이블 이름을 꼭 함께 지정해야 해요.

출처: PostgreSQL 문서

본문

Synopsis (문법)

DROP TRIGGER [ IF EXISTS ] name ON table_name [ CASCADE | RESTRICT ]

Description (설명)

DROP TRIGGER는 기존 트리거 정의를 제거해요. 이 명령을 실행하려면 현재 사용자가 트리거가 정의된 테이블의 소유자여야 해요.

Parameters (매개변수)

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

Examples (예제)

테이블 films에 있는 트리거 if_dist_exists를 삭제해요:

DROP TRIGGER if_dist_exists ON films;

Compatibility (호환성)

PostgreSQL의 DROP TRIGGER 문장은 SQL 표준과 호환되지 않아요. SQL 표준에서 트리거 이름은 테이블에 국한되지 않으므로, 명령이 단순히 DROP TRIGGER name 형태예요.

더 알아보기 (Learn more)

  • 트리거를 만들 때 쓰는 CREATE TRIGGER 명령
  • 트리거 정의를 바꾸는 ALTER TRIGGER 명령
  • PostgreSQL 트리거와 트리거 함수 개념