2012-11-15 3 views
-2

트리거를 작성하여 다른 트리거를 활성화 할 수 있습니까? 아니면 2 트리거를 1 트리거에 넣을 수 있습니까?트리거를 사용하여 트리거 활성화

+0

예 그것이 DISABLE trigger_name의

ALTER TRIGGER를 사용하려면 아래 추가,하지만 당신은하지 않으려 고한다 ~에 ... –

+0

귀하의 요구 사항은 무엇입니까? – user75ponic

+0

뭔가가 가능한지 우리에게 묻기보다는 달성하려는 것을 우리에게 말해주는 것이 더 낫습니다. 당신은 당신이 진짜로 의미하는 바에 따라 귀하의 질문에 대한 대답을 YES 또는 NO 또는 MAYBE라고 거의 알려주지 않았습니다. 좀 더 도움이되도록 * 질문을 편집하십시오. – APC

답변

0

적절한 DML이 해당 테이블에 대해 실행되면 트리거가 시작됩니다. 트리거를 호출하는 개념은 없습니다. 당신이 차 이벤트에서 코드를 공유하려는 경우

, 그런 짓을 쉽게 : 삽입 키워드가 하나 개의 이벤트에 대한 활동을 분리하는 방법

create or replace trigger ins_upd_emp 
before insert or update on emp 
for each row 
begin 
    -- do this only for new records 
    if inserting then 
      :new.id := emp_seq.nextval; 
    end if; 

    -- do this for all records 
    :new.last_activity_user := user; 
    :new.last_activity_date := sysdate; 
end; 

참고. 모든 키워드가 아닌 일부 작업을 공유하려면이 키워드를 사용하십시오. Find out more.

트리거를 사용하면 통화가 통제에서 벗어 났으므로 끔찍한 혼란에 빠질 수 있습니다. 가장 간단한 조작을 위해서만 트리거를 사용하십시오. 트리거에 복잡한 논리를 구축하는 것은 여러 가지 이유로 나쁜 :

  1. 성능이 다중 행 문
  2. 트리거가 보이지 않습니다에 대한 빈약 할 수있다; 개발자는 문제를 진단 할 때 항상이를 확인하는 것을 잊어 버린다.
  3. 트리거를 사용하면 가정되지 않은 일들로 인해 끔찍한 kludges가 발생한다.
0

그냥 trigger_name의이

을 사용하거나 사용하지 않도록

위한

ALTER TRIGGER가

관련 문제