我一直在使用 TSQL 触发器,假设插入的表始终包含插入或更新的记录,而删除的表始终包含更新的记录(我忽略了删除)。
这是相关的 MSDN 文章:
http://msdn.microsoft.com/en-us/library/ms191300.aspx
但是,我遇到过插入和删除都是空的情况。这是我一直在使用的测试触发器。
CREATE TRIGGER [dbo].[InsertUpdateTest] ON [dbo].[Test]
AFTER INSERT, UPDATE
AS
DECLARE @countInserted INT
DECLARE @countDelete INT
SET @countInsert = (SELECT COUNT(*) FROM INSERTED)
SET @countDeleted = (SELECT COUNT(*) FROM DELETED)
IF (@countInserted = 0 AND @countDelete = 0)
BEGIN
print 'Inserted and deleted are both empty'
END
在什么条件下会发生这种情况?