我創建了更新表的觸發器。如果發生更新,我想將舊值存儲在單獨的表中。我試圖從「插入」表中獲取舊值,但此表不會在更新後使用舊值填充。SQL Server 2005中觸發
下面是示例代碼:
CREATE TRIGGER [dbo].[Logs_Update]
ON [dbo].[Logs] AFTER UPDATE
AS
DECLARE @url varchar(50)
BEGIN
SELECT @url = i.url
FROM INSERTED i
INSERT INTO dbo.Triggers_tbl
(ID, URL)
VALUES
(1000, @url)
END
我得到@url
從inserted表爲空。
請讓我知道什麼是錯的觸發
的觸發STIL不好的編程技術,永遠不要假設只有一條記錄會在插入或刪除。 – HLGEM 2010-03-11 17:51:18
@HLGEM:完全品質協議沒寫這段代碼要麼 - 我只是想說明的OP如何使用「刪除」表,而不是「未插入」 - 這一切 – 2010-03-11 20:26:42