by 안찌 [2016.04.28 17:37:21]
프로시져 안에 트리거 작성이 가능한가요???
그러니까,
create trigger delete_emp_trigger
after delete on emp
for each row
begin
delete from emp_backup
where empno = :old.empno;
end;
/
위의 트리거 문을 프로시져로 만들어서
프로시져를 실행하면 위의 트리거문이 실행되도록하는것이요!
프로시저를 실행하면 트리거를 만들도록 할 수는 있지요
그렇다면 프로시져 안에 트리거 자체를 포함하여
만든 프로시져를 실행하면 트리거도 실행되게할수는 없나요??
만약안된다면 어떤식으로 해야하는건가요 ㅠㅠㅠㅠㅠ
트리거는 말 그대로 트리거죠 insert update delete 일어날 때 일어나는건데 프로시저 실행 시 실행되게 하는건 프로시저나 펑션을 구현하시면 될 것 같아요
트리거와 프로시져를 합칠 수는 없습니다. 성격이 다르죠. 트리거는 특정 이벤트에 따라 자동 동작하는 것이고 프로시져는 사용자 호출에 의해 실행이 되죠.
트리거 안의 로직만 따로 빼서 프로시져에 넣을 수는 있겠죠. 트리거 자체를 프로시져에 넣을 수는 없죠.
트리거 안에서 프로시져를 호출할 수는 있어도. 프로시져 안에서 트리거를 호출할 수는 없구요. 프로시져 안에서 트리거를 발생시키는 이벤트(Delete문)를 기술할 수는 있겠네요.