본문 바로가기

ORACLE/PL/SQL

오라클 트리거(Trigger) 실습중

 

-- Trigger 작성

SQL>
CREATE OR REPLACE TRIGGER triger_test BEFORE UPDATE ON dept FOR EACH ROW BEGIN DBMS_OUTPUT.PUT_LINE('변경 전 컬럼 값 : ' || : old.dname); DBMS_OUTPUT.PUT_LINE('변경 후 컬럼 값 : ' || : new.dname); END; /


-- UPDATE문을 실행
   이 때 트리거에서 정의해준 칼럼인 dname 이 아닌 loc 칼럼을 업데이트 할 경우
 
SQL> SET SERVEROUTPUT ON ;
SQL>
UPDATE dept
     SET loc = 'busan' 
WHERE deptno = 40




-- 결과
 

변경 전 값 : OPERATIONS
변경 후 값 : OPERATIONS

 

--해당 칼럼이 아닌경우 위와 같은 메세지가 출력됨