logo

English

이곳의 프로그래밍관련 정보와 소스는 마음대로 활용하셔도 좋습니다. 다만 쓰시기 전에 통보 정도는 해주시는 것이 예의 일것 같습니다. 질문이나 오류 수정은 siseong@gmail.com 으로 주세요. 감사합니다.

SQLite 활용 팁 3 - 다른 DB 테이블에 트리거 사용하기

by digipine posted Nov 01, 2017
?

Shortcut

PrevPrev Article

NextNext Article

Larger Font Smaller Font Up Down Go comment Print
?

Shortcut

PrevPrev Article

NextNext Article

Larger Font Smaller Font Up Down Go comment Print

SQLite에서는 Attach 하는 방법으로 다른 DB의 테이블을 마치 내 DB안의 테이블 처럼 사용할 수 있습니다.
그런데 Trigger도 사용이 가능할까요. 예를 들어 백업 용으로 같은 DB를 두개 만들고 한 DB 테이블에
INSERT가 되면 백업용 DB파일에도 같은 내용이 INSERT 되도록 Trigger를 만들 수 있을까하는 것인데

원칙적으로는 안된다고 한다. 
http://www.sqlite.org/lang_createtrigger.html 참조하시라
그런데 Temporary 트리거라는 것을 이용하면된다.
다른 DB 테이블은 그 DB가 Attach되지 않으면 사용할 수 없다 따라서 정식 트리거로 등록할 수 없는데
아래와 같이 Temporary 로 등록하는 편법을 사용하면 할수있다. 
그런데 INSERT 되는 Table이 Attcah 된 테이블이어야 한다는 제약이 따른다.

그나마 될 수 있다는 것이 다행이다.

 

아래 예제를 참조

CREATE TEMPORARY TRIGGER [LOG_BACKUP_TRIGGER]
AFTER INSERT ON BACKUP.[USER_LOG2] /* Attach 된 테이블에 INSERT */
FOR EACH ROW
BEGIN
     INSERT INTO USER_LOG(REGTIME, UID, CARD_TYPE, GRADE, REISSUE, MODE, 
                                   MATCHING_TYPE, MANAGER, STATUS, AUTH, KEY)
            VALUES(new.REGTIME, new.UID, new.CARD_TYPE, new.GRADE, new.REISSUE, 
                 new.MODE, new.MATCHING_TYPE, new.MANAGER, new.STATUS, 
                             new.AUTH, new.KEY); /* MAIN 테이블에 INSERT */
END

TAG •

List of Articles
No. Subject Author Date Views
18 MySQL Data Backup - Database Dump 방법 및 복구 방법 엉뚱도마뱀 2017.11.18 20
17 [PostgreSQL] 간단 사용법 digipine 2017.11.02 51
16 MySQL 5.7.x 버전 root 및 유저 암호(Password) 변경 digipine 2017.11.02 5
» SQLite 활용 팁 3 - 다른 DB 테이블에 트리거 사용하기 digipine 2017.11.01 3
14 SQLite 활용 팁 2 - 트리거 실전 사용하기 digipine 2017.11.01 2
13 SQLite 활용 팁 2 - 트리거 실전 사용하기 digipine 2017.11.01 2
12 SQLite 활용 팁 1 - 트리거 활용하기 digipine 2017.11.01 2
11 Ubuntu에서 sqlite3 빌드 방법 digipine 2017.11.01 2
10 HTTP Multi Part Request Sample Format digipine 2017.11.01 3
9 서블릿(Servlet) 이란 무엇인가? siseong@naver.com 2017.11.01 2
8 Apache Tomcat 설치후 관리자 모드 실행 되지 않을때 문제 해결방법 digipine 2017.11.01 4
7 Filter를 이용한 웹 프로그래밍 Filter 란 무엇인가? file siseong@naver.com 2017.10.31 3
6 Eclipse, JSP, Beans 실습하기 digipine 2017.10.29 5
5 MS Access MDB를 위한 DB Connection String digipine 2017.10.29 2
4 Choosing a free database - DB2 digipine 2017.10.29 19
3 [Oracle] SQL*Plus 개요,각종 명령어들 digipine 2017.10.28 3
2 SyBase 사용법 요약 digipine 2017.10.28 3
1 SyBase 와 JSP 연동 digipine 2017.10.28 5
Board Pagination Prev 1 Next
/ 1