У меня есть следующий код в триггере SQL Server 2005:
CREATE TRIGGER [myTrigger] ON [myTable]
FOR UPDATE,DELETE
AS
BEGIN
DECLARE @OperationType VARCHAR(6)
IF EXISTS(SELECT 1 FROM INSERTED)
BEGIN
SET @OperationType='Update'
END
ELSE
BEGIN
SET @OperationType='Delete'
END
Мой вопрос: есть ли ситуация, когда @OperationType не заполняется правильно? Е.Г .: данные в таблице изменяются кучей операторов UPDATE / DELETE, но триггер не запускается один раз каждым из них?
Есть ли у вас лучший способ определить, сработал ли триггер с помощью оператора UPDATE или DELETE?