MSSQL 트리거(TRIGGER) 활성화 / 비활성화 처리 방법 쿼리문
MS SQL에서 트리거(TRIGGER)를 할성화, 비활성화 처리할 때가 있습니다. 특히 데이터 마이그레이션 작업을 할 때는 테이블에 트리거가 생성되어 있는지 확인이 필요합니다. 필요시 비활성화 처리 후 작업이 끝난 다음에 다시 활성화 처리를 합니다. 그래서 저는 운영상 반드시 필요하다고 생각되는 테이블에서만 트리거를 생성하는 편입니다.
그럼 간단하게 트리거(TRIGGER) 활성화(ENABLE), 비활성화(DISABLE) 처리 방법에 대해서 알아보죠.
포스트 기준
– Microsoft SQL Server 2019
– SSMS 18.11
※ 트리거(TRIGGER)를 생성하게 되면 기본적으로 활성화 처리가 됩니다.
◎ 트리거 생성된 테이블 예시
1. 비활성화 처리
1. 사용법(구문)
2. 사용 예시 쿼리문
-- 테이블(BS_USR_MAST)에 생성된 트리거(BS_USR_MAST_D) 비활성화 처리
DISABLE TRIGGER BS_USR_MAST_D ON BS_USR_MAST
GO
-- 테이블(BS_USR_MAST)에 생성된 모두 트리거 비활성화 처리 (주로 사용)
-- BS_USR_MAST_I(생성), BS_USR_MAST_U(변경), BS_USR_MAST_D(삭제) 트리거
DISABLE TRIGGER ALL ON BS_USR_MAST
GO
-- 실행중인 데이터베이스에 생성된 모든 트리거 비활성화 처리
DISABLE TRIGGER ALL ON DATABASE
GO
-- 실행중인 서버의 모든 데이터베이스에 생성된 모든 트리거 비활성화 처리
DISABLE TRIGGER ALL ON ALL SERVER
GO
2. 활성화 처리
1. 사용법(구문)
2. 사용 예시 쿼리문
-- 테이블(BS_USR_MAST)에 생성된 트리거(BS_USR_MAST_D) 활성화 처리
ENABLE TRIGGER BS_USR_MAST_D ON BS_USR_MAST
GO
-- 테이블(BS_USR_MAST)에 생성된 모두 트리거 활성화 처리 (주로 사용)
-- BS_USR_MAST_I(생성), BS_USR_MAST_U(변경), BS_USR_MAST_D(삭제) 트리거
ENABLE TRIGGER ALL ON BS_USR_MAST
GO
-- 실행중인 데이터베이스에 생성된 모든 트리거 활성화 처리
ENABLE TRIGGER ALL ON DATABASE
GO
-- 실행중인 서버의 모든 데이터베이스에 생성된 모든 트리거 활성화 처리
ENABLE TRIGGER ALL ON ALL SERVER
GO
함께 보면 좋은 게시글
- MSSQL 트리거(TRIGGER) 사용법(생성) 및 예제
- MSSQL 저장 프로시저 사용법(실행) 및 예제 (TRY…CATCH 등)
- MSSQL INSERT EXEC 프로시저 실행 결과 테이블에 저장하기
- MSSQL 동적 쿼리 사용법, 저장 프로시저 및 함수 활용
- MSSQL 뷰(VIEW) 생성 및 활용 방법, 뷰 스크립트 확인 방법
이 글이 도움이 되셨다면 공유 부탁 드립니다.