Trigger
- 묵시적으로 수행되는 procedure 프로시저
- 트리거는 table과 별도로 database에 저장
- 트리거는 view에 대해서가 아니라 table에 관해서만 정의 될 수 있다.
- 행 트리거 : 컬럼의 각각의 행의 데이터 행 변화가 생길때마다 실행,
그 데이터 행의 실제값을 제어 할 수 있다.
- 문장 트리거 : 트리거 사건에 의해 단 한번 실행됨,
컬럼의 각 데이터 행을 제어 할 수 없다.
트리거 문법
CREATE [OR REPLACE] TRIGGER trigger_name
BEFORE | AFTER
trigger_event ON table_name
[FOR EACH ROW]
[WHEN (condition)]
PL/SQL block
- BEFORE : INSERT, UPDATE, DELETE 문이 실행되기 전에 트리거가 실행
- AFTER : INSERT, UPDATE, DELETE문이 실행된 후 트리거가 실행
- trigger_event : INSERT, UPDATE, DELETE 중에서 한 개 이상 올 수 있다.
- FOR EACH ROW : 이 옵션이 있으면 행 트리거가 된다.
'DB > Oracle' 카테고리의 다른 글
[Oracle] JAVA와 DB의 연동 (0) | 2017.07.03 |
---|---|
[Oracle] View 란? (0) | 2017.07.03 |
[Oracle] Data Integrity(데이터 무결성) (0) | 2017.07.03 |
[Oracle] Transaction (0) | 2017.07.03 |
[Oracle 과제] Join에 대한 문제 (0) | 2017.06.26 |