Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 在中引用where子句,而不是update触发器_Sql Server_Triggers - Fatal编程技术网

Sql server 在中引用where子句,而不是update触发器

Sql server 在中引用where子句,而不是update触发器,sql-server,triggers,Sql Server,Triggers,是否有方法在中引用where子句而不是update触发器 **更多信息** 我试图回避这个问题: 此神奇产品将尝试更新已更改或甚至可能不存在的行。因为如果我可以将where子句修改为更通用的话,我不需要/关心现有数据,所以更新将运行,我可以继续。删除的表显示了您使用where子句选择的数据,所以如果您知道where子句位于第1列,您知道您要求的值吗?但是直接知道where子句中的内容,否。触发器中唯一可用的数据是update语句前后表中的数据 如果您在trigger中表达了您想要做的事情,可能

是否有方法在中引用where子句而不是update触发器

**更多信息**

我试图回避这个问题:


此神奇产品将尝试更新已更改或甚至可能不存在的行。因为如果我可以将where子句修改为更通用的话,我不需要/关心现有数据,所以更新将运行,我可以继续。

删除的表显示了您使用where子句选择的数据,所以如果您知道where子句位于第1列,您知道您要求的值吗?但是直接知道where子句中的内容,否。触发器中唯一可用的数据是update语句前后表中的数据


如果您在trigger中表达了您想要做的事情,可能会更容易帮助您。

如果您使用此特定模板更新数据,您在评论中提到:

UPDATE T SET col1 = xxx WHERE col1 = yyy
也就是说,如果您根据某个列的当前值更新该列,那么,我认为,可以说是的,您可以“访问WHERE子句”


实际上,您将访问的是所谓的“魔法表”、
删除的
插入的
,它们分别在更新之前和之后保存值。尤其是更新前的值,就是上面update语句的WHERE子句引用的值。

WHERE子句是什么?insert select的where子句?也许您应该向我们展示您感兴趣的数据以及您希望如何在触发器中操作这些数据,以便我们更好地了解如何帮助您。@HLGEM--如
Update T set col1=xxx,其中col1=yyy