728x90
테이블에 변화가 올때마다 기록을 남기는게 필요했다.
TC5002MT는 원본테이블
TC5002TG는 트리거용 테이블(기록용)
두 테이블의 차이는 TC5002TG에 seq라는 AUTO_INCREMENT가 있다는 점과 함수명을 남기기위한 FUNC가 있다는 점이 차이다. (PK차이)
데이터내용을 전부 추가하고 싶으면 INSERT에 다 넣어주면된다.
샘플 코드만 있으니 자세한건 다른 블로그 참고바람
BEFORE 와 AFTER, OLD와 NEW,
UPDATE INSERT DELETE 따로 해줘야한다는 점.
짜증나는건 트리거 잘못만들면 기존에 작동했던 기능들이 안될수도 있다.(기능이 안된다는 것은 기존의 테이블에 연관된 select이나 insert등의 기능이다.)
DELIMITER $$
CREATE TRIGGER TC5002MT_TRIGGER_INSERT
AFTER INSERT ON TC5002MT
FOR EACH ROW
BEGIN
INSERT INTO TC5002TG SET FUNC = "INSERT", ACCOUNT = NEW.ACCOUNT;
END$$
DELIMITER ;
DELIMITER $$
CREATE TRIGGER TC5002MT_TRIGGER_UPDATE
AFTER UPDATE ON TC5002MT
FOR EACH ROW
BEGIN
INSERT INTO TC5002TG SET FUNC = "UPDATE", ACCOUNT = NEW.ACCOUNT;
END$$
DELIMITER ;
DELIMITER $$
CREATE TRIGGER TC5002MT_TRIGGER_DELETE
BEFORE DELETE ON TC5002MT
FOR EACH ROW
BEGIN
INSERT INTO TC5002TG SET FUNC = "DELETE", ACCOUNT = OLD.ACCOUNT;
END$$
DELIMITER ;
728x90
'개발 업무(코딩)-개발자였을때 썼던..' 카테고리의 다른 글
c-java(클라) tr전문 테스트용 샘플 (0) | 2023.01.09 |
---|---|
코스콤 배치 작업 내역 (0) | 2023.01.09 |
C언어 HMAC SHA256 샘플코드(openssl) (0) | 2023.01.09 |
c-json 라이브러리에 대한 고찰과 소수점 짜르는 소스 (0) | 2023.01.09 |
C언어 HMAC SHA256 샘플코드(openssl dgst popen) (0) | 2023.01.09 |