CREATE OR REPLACE TRIGGER TABLE_A_TR AFTER INSERT ON TABLE_B FOR EACH ROW DECLARE BEGIN IF INSERTING THEN MERGE INTO TABLE_A A USING (SELECT :new.USER_ID as USER_ID, :new.SEQEUNCE_ID as SEQEUNCE_ID FROM DUAL) B ON (B.USER_ID = A.USER_ID) WHEN MATCHED THEN UPDATE SET A.SEQEUNCE_ID = B.SEQEUNCE_ID WHEN NOT MATCHED THEN INSERT (USER_ID, SEQEUNCE_ID) VALUES (B.USER_ID, B.SEQEUNCE_ID); END IF; COMMIT; END; /
제가 트리거는 많이 안만들어봐서 경험이 부족합니다.
TABLE_B 에 insert 될때만, TABLE_A에 merge문으로 insert or update를 하는 trigger를 만들었는데요.
생성은 잘 되는데, trigger가 생성 된 후에, TABLE_B에 데이터가 insert되지가 않아요.... 물론 TABLE_A에 merge도 되지 않구요..
혹시 문제점이 뭔지 알 수 있을까요?