有没有办法引用where子句而不是update trigger?
**更多信息**
我正试图解决这个问题: Modify update statement includes primary key in trigger
这个奇迹产品将尝试更新已更改或甚至可能不存在的行。由于我不需要/关心现有数据,如果我可以将where子句修改为更通用的更新将运行,我可以继续。
答案 0 :(得分:0)
删除的表显示了您使用where子句选择的数据,因此如果您知道where子句位于第1列,您知道您要求的值吗?但是直接知道什么是where子句,没有。您在触发器中可用的唯一数据是更新声明之前和之后表中的数据。
也许如果你表达了你想要做的事情,那么你可以更容易地帮助你。
答案 1 :(得分:0)
如果您使用此特定模板更新数据,请在评论中提及:
UPDATE T SET col1 = xxx WHERE col1 = yyy
也就是说,如果你根据当前值更新某个列,那么,我认为,是的,你可以可以'访问WHERE子句。
实际上,您将访问的是所谓的“魔术表”,DELETED
和INSERTED
,它们分别在更新之前和之后保存值。更新前的值特别是上面UPDATE语句的WHERE子句引用的值。