문의] 임의 삭제 레코드 처리 방법에 관하여 0 5 991

by 이종현 [2014.07.16 11:42:48]


안녕하세요.

오라클에서 특정 레코드 삭제시 그 삭제 레코드를 다른 특정 테이블로 복사 (또는 insert) 할 수 있는

기능이 없는 가 해서 문의 드립니다.

만약 그런 기능이 있다면 어떻게 구현 하는 지도 알려 주시면 감사하겠습니다.

날씨가 매우 덥습니다. 건강하세요.

 

by 아발란체 [2014.07.16 11:54:49]

Trigger가 딱 그용도 입니다.

관련 강좌 : http://www.gurubee.net/lecture/2057

 

삭제 되었을 때 그 데이타를 다른 테이블에 넣는다면

CREATE OR REPLACE TRIGGER [트리거_이름] AFTER DELETE ON [이벤트 발생 테이블명]

FOR EACH ROW

BEGIN
   INSERT INTO [백업 테이블명](..) VALUES( :OLD.항목명1, :OLD.항목명2, ....);
END;


by 이종현 [2014.07.16 13:19:27]

아발란체님 감사합니다.

참고 예제까지 너무너무 감사합니다.

덕분에 잘 처리 했습니다.


by 아발란체 [2014.07.16 13:36:53]

도움이 되었다니 다행이네요 ~ :)


by 이종현 [2014.07.16 14:02:50]

하나를 해결하니 더 욕심이 생깁니다.

혹시 delete 이벤트를 발생시키는는 컴이름을 알수 있는 방법은 없을 까요,

알 수 있다면 트리거로 백업할때 컴이름 까지 기록했으면 합니다.

질문만 드려서 죄송합니다.


by 아발란체 [2014.07.16 16:11:28]

ㅡ,.ㅡ;; 저도 강좌에 있는 내용만 알고 있어서 그런게 있나모르겠네요. ^^;

그냥 IF로 OLD.항목1 NEW.항목1 비교해야 할 것 같아용.

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입