본문
트리거(Trigger)
DB(Oracle) 2015. 11. 19. 18:45
# 트리거(Trigger)
1. 정의
- 미리 정해 놓은 조건을 만족하거나 어떤 동작이 수행되면 자동적으로 수행되는 동작
트리거는 데이터베이스에서 데이터에 대한 유효성 조건과 무결성 조건을 기술하는 데 유용하다. 트리거를 사용하여 데이터 작업 제한, 작업 기록, 변경 작업 감시 등을 할 수 있다.
2. 유형
트리거에는 크게 나누어 행 트리거와 문장 트리거의 두 종류가 있다.
2.1 행 트리거
테이블 안의 영향을 받은 행 각각에 대해 실행된다.
변경 전 또는 변경 후의 행은 OLD, NEW라는 가상 줄 변수를 사용하여 읽을 수 있다.
2.2 문장 트리거
INSERT, UPDATE, DELETE 문에 대해 한번만 실행된다.
3. 트리거 속성
- BEFORE 또는 AFTER : 트리거가 실행되는 시기를 지정한다.
- INSTEAD OF : 트리거를 원래 문장 대신 수행한다.
- WHEN : 트리거를 시작하는 조건식을 지정한다.
일반적으로 트리거는 다음의 3 가지 경우에 시작된다. (INSERT, UPDATE, DELETE)
트리거는 SELECT 문에 의한 데이터 검색에 영향을 미칠 수 없다.
- INSERT (새로운 행 삽입)
- UPDATE (기존 행의 변경) / UPDATE OF (기존 행의 특정 열 변경)
- DELETE (기존 행 삭제)
- 출처:
(1) http://terms.naver.com/entry.nhn?docId=860900&cid=42346&categoryId=42346
댓글