我有一个表人,它有 2 个触发器(如果插入数据,触发器进行更新)所有触发器都在稍后插入之后我将有关事件的信息插入到其他表中,我得到(更新,更新,插入)但应该是这个(插入,更新,更新)你知道为什么吗?
我对这个例子有疑问:
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
这篇文章的例子: