У меня есть стол, у которого есть два триггера (если данные вставлены, триггеры делают обновление), все триггеры: после вставки позже Вставляю информацию о событиях в другую таблицу, и я получаю (Update , «Обновить», «Вставить»), но должен быть указан (вставка, обновление, обновление). Знаете ли вы, почему?Неверная очередь событий в TRIGGER
У меня проблема с этим примером:
DECLARE @HistoryType CHAR(1) --"I"=insert, "U"=update, "D"=delete
SET @HistoryType=NULL
IF EXISTS (SELECT *
FROM inserted)
BEGIN
IF EXISTS (SELECT *
FROM deleted)
BEGIN
--UPDATE
SET @HistoryType='U'
END
ELSE
BEGIN
--INSERT
SET @HistoryType='I'
END
END
ELSE IF EXISTS(SELECT *
FROM deleted)
BEGIN
--DELETE
SET @HistoryType='D'
END
IF @HistoryType='U' or @HistoryType='I'
//do something
END
Пример из этого поста:
How to copy an inserted,updated,deleted row in a SQL Server trigger(s)
Итак, у вас есть два триггера AFTER INSERT? – gbn
@gbn да у меня есть. –
@gbn Знаете ли вы, где может быть проблема? –