2011-11-29 3 views
9

높은 값과 낮은 값으로 검색했으며 내 질문에 만족스러운 답을 찾을 수 없었습니다. 어느 쪽이 정확히 TRANSACTION이 SQL Server에서 작동하는지 파악하는 경향이 있습니다.TSQL - 트랜잭션에서 트리거 사용 안 함

기본적으로 이것이 내가하는 일이라고 생각합니다. 내가 업데이트를 실행하지 않고, 테이블의 일부 데이터를 수정 할 수 있도록하려는

BEGIN TRAN 

DISABLE [my_update_trigger] ON [my_table] 

/*.. Do Some Updates ..*/ 

ENABLE [my_update_trigger] ON [my_table] 

COMMIT TRAN 

내가 테이블에 가지고 트리거합니다. 이것은 웹 앱을위한 것이므로, 제 일을하는 동안 웹 앱의 테이블에서 업데이트가 수행되면 [my_update_trigger]이 여전히 웹 앱을 실행합니다.

+1

가 기존되는 게시물의 범위에있을 것이라고 생각하지 않았을 [1] [1] : http://stackoverflow.com/questions/174600/t-sql-is-there-a-way-to-disable-a-trigger-in-the-scope-of-a-transaction – Turbot

답변

2

업데이트 물건은 괜찮 - 안 등 수

DISABLE TRIGGER [my_update_trigger] ON [my_table] 

/*.. Do Some Updates ..*/ 

ENABLE TRIGGER [my_update_trigger] ON [my_table] 

은 MSDN 페이지를 찾아 유무 : 비록 세션이 특정 만들기에 http://msdn.microsoft.com/en-us/library/ms189748.aspx

를 : 그 일을한다면 나는 의심 것 - 사용 불가능/사용 가능은 DML이 아닌 DDL입니다. 즉, 데이터가 아닌 데이터베이스 오브젝트에서 작동합니다. 나는이 [트랜잭션의 범위에 트리거를 사용하지 TSQL 방법] 당신에게 도움이 될 트랜잭션