【发布时间】:2012-01-16 09:28:26
【问题描述】:
创建触发器:
SELECT @oldVersionId = (SELECT DISTINCT VERSION_ID FROM Deleted)
SELECT @newVersionId = (SELECT DISTINCT VERSION_ID FROM Inserted)
SELECT @appId = (SELECT DISTINCT APP_ID FROM Deleted)
UPDATE [TableName]
SET [VERSION_ID] = @newVersionId
WHERE (([VERSION_ID] = @oldVersionId) AND ([APP_ID] = @appId) )
可以用外键替换此触发器以更新 VERSION_ID 吗?
我认为可能存在问题的是 AND 条件,如何在具有 On del/update Cascade 的 FK 中表达它?
【问题讨论】:
-
我想摆脱那个触发器并用 FK 约束替换它。当 PK ID 更改级联时,另一个 FK ID 表上的更改。
标签: sql sql-server triggers foreign-keys