0
我使用此代碼檢查新條目的元素是否等於以前插入的數據的元素。在AFTER INSERT觸發器中檢索初始表SQL
CREATE TRIGGER trig1 ON Table1
AFTER INSERT
AS
DECLARE trigcursor CURSOR FOR
SELECT Name FROM INSERTED
DECLARE @Name1 varchar(80)
OPEN trigcursor;
FETCH NEXT FROM trigcursor INTO @Name1
WHILE @@FETCH_STATUS = 0
BEGIN
IF EXISTS(SELECT * FROM Table1 WHERE Name= @Name1)
BEGIN
...
END
FETCH NEXT FROM trigcursor INTO @Name1
END
問題是,由於某種原因,新條目也存在於表格Table1中,不僅在INSERTED中。所以情況總是如此。你能幫我解釋爲什麼會這樣嗎?有沒有辦法只檢索沒有新條目的初始表?謝謝!
的是沒有之前在MSSQL 2005中觸發...所以與後插入它是不可能的? – iiirxs
是的。不可能。 您可以使用INSTEAD OF INSERT觸發器。似乎它是由SQL 2005支持。 – GeorgeVremescu
我使用INSTEAD OF INSERT觸發器解決了我的問題。非常感謝。 – iiirxs