CREATE TRIGGER 트리거 이름
ON { 테이블이름 | 뷰이름}
[ WITH ENCRYPTION ]
{ FOR | AFTER | INSTEAD OF }
{ [ INSERT ] [ , ] [ UPDATE ] [ , ] [ DELETE ] }
AS
실행할 SQL 문들
* WITH ENCRYPTION : 트리거의 내용을 암호화시켜서 추후에 내용을 확인할 수 없도록 한다.
* FOR | AFTER | INSTEAD OF : AFTER를 지정하면 해당 테이블에 작업이 수행되고 작업이 정상적으로
끝난 후에 트리거의 내용이 실행된다. AFTER는 테이블에 대해서만 지정할 수 있으며, 뷰에 대해서는
지정할 수 없다.
INSTEAD OF는 테이블 및 뷰에 지정할 수 있지만 뷰에 많이 사용된다. INSTEAD OF를 지정하고 해당
테이블이나 뷰에 지정한 SQL(INSERT, UPDATE, DELETE)이 작동하면 시도된 SQL은 무시되고
트리거에 지정된 SQL문이 대신 작동하게 된다. FOR는 AFTER와 동일한 것으로 생각하면 된다.
* INSERT | UPDATE | DELETE : 트리거가 실행되는 이벤트를 지정한다. 하나 이상으로 조합해서
작동시킬 수 있다.
ON { 테이블이름 | 뷰이름}
[ WITH ENCRYPTION ]
{ FOR | AFTER | INSTEAD OF }
{ [ INSERT ] [ , ] [ UPDATE ] [ , ] [ DELETE ] }
AS
실행할 SQL 문들
* WITH ENCRYPTION : 트리거의 내용을 암호화시켜서 추후에 내용을 확인할 수 없도록 한다.
* FOR | AFTER | INSTEAD OF : AFTER를 지정하면 해당 테이블에 작업이 수행되고 작업이 정상적으로
끝난 후에 트리거의 내용이 실행된다. AFTER는 테이블에 대해서만 지정할 수 있으며, 뷰에 대해서는
지정할 수 없다.
INSTEAD OF는 테이블 및 뷰에 지정할 수 있지만 뷰에 많이 사용된다. INSTEAD OF를 지정하고 해당
테이블이나 뷰에 지정한 SQL(INSERT, UPDATE, DELETE)이 작동하면 시도된 SQL은 무시되고
트리거에 지정된 SQL문이 대신 작동하게 된다. FOR는 AFTER와 동일한 것으로 생각하면 된다.
* INSERT | UPDATE | DELETE : 트리거가 실행되는 이벤트를 지정한다. 하나 이상으로 조합해서
작동시킬 수 있다.
'연구개발 > SQL2005' 카테고리의 다른 글
로그전달 구축강좌 1/6 - 임시 DB 생성 및 백업 (0) | 2009.06.18 |
---|---|
SP_SEARCH - 저장프로시저에서 단어찾기? (0) | 2009.06.17 |
커서 정보 확인 (0) | 2009.06.12 |
테이블 필드명 변경 (0) | 2009.06.12 |
시스템 저장 프로시저(Transact-SQL) (0) | 2009.06.11 |