0
궁금합니다. 나는 내가 원하는 것을 정확히하는이 방아쇠를 가지고있다.삽입 트리거 후 SQLServer는 전체 테이블 또는 삽입 된 행을 반복합니다.?
USE [IGOR]
GO
/****** Object: Trigger [dbo].[AfterInsertTarget] Script Date: 11/20/2013 14:46:06 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER TRIGGER [dbo].[AfterInsertTarget] ON [dbo].[DMM_TARGET]
after insert
as
set nocount on
update DMM_TARGET
set ID_WEEK = 0
WHERE FREQ = 'Daily'
내 질문은 :합니까 업데이트 문에만 삽입 된 행에 FREQ = '데일리'의 경우 0으로 ID_WEEK를 설정하는 일이다합니까? 또는 전체 표를 물결 모양으로 순환합니까? 왜냐하면 지금은 단지 50000 개의 항목이기 때문입니다. 그러나 수백만에 이르면 트리거만으로 한 행을 삽입하는 데 시간이 걸릴 것입니다.
감사합니다.
트리거는'inserted' 의사 - 테이블을 참조하지 않기 때문에 삽입이 영향을받는 행을 기반으로 업데이트해야하는 행을 식별하지 않습니다. 또한 이것을 "루프"로 생각하지 않아야합니다. 마지막으로, 해당 열에 기본 제약 조건을 추가하지 않으시겠습니까? –