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 在列更新时调用触发器_Sql Server_Database_Triggers - Fatal编程技术网

Sql server 在列更新时调用触发器

Sql server 在列更新时调用触发器,sql-server,database,triggers,Sql Server,Database,Triggers,我有一个条件,当表中某个特定列更新时,应该调用触发器中的,而不是当任何其他列更新时。 有可能吗?触发器在任何更新时都会被调用,但只有当列具有新值时,才可以添加一些检查以处理数据。触发器在任何更新时都会被调用,但只有当列具有新值时,才可以添加一些检查以处理数据。触发器在插入、更新、,删除这意味着无论更新哪个列,每次更新命令都会触发触发器 最佳富豪, Iordan触发器在INSERT、UPDATE、DELETE上只有树选项。这意味着无论更新哪个列,触发器都会在每个更新命令上触发 最佳富豪, Iord

我有一个条件,当表中某个特定列更新时,应该调用触发器中的,而不是当任何其他列更新时。
有可能吗?

触发器在任何更新时都会被调用,但只有当列具有新值时,才可以添加一些检查以处理数据。

触发器在任何更新时都会被调用,但只有当列具有新值时,才可以添加一些检查以处理数据。

触发器在插入、更新、,删除这意味着无论更新哪个列,每次更新命令都会触发触发器 最佳富豪,
Iordan

触发器在INSERT、UPDATE、DELETE上只有树选项。这意味着无论更新哪个列,触发器都会在每个更新命令上触发 最佳富豪,
Iordan

无论字段是否更改,都会调用触发器,但是您可以使用

IF UPDATE(mycol)
BEGIN
    -- logic goes here
END
实现特定列的逻辑


还可以查看COLUMNS\u UPDATED函数。

无论字段是否更改,都会调用触发器,但是您可以使用

IF UPDATE(mycol)
BEGIN
    -- logic goes here
END
实现特定列的逻辑


还要看一下COLUMNS\u UPDATED函数。

由于SQL Server触发器是语句级触发器而不是行级触发器,我想知道单个测试更新(mycl)如何确定所有行的更新状态。似乎UPDATE语句将为所有受影响的行或无行更新列。这是因为,如果在UPDATE语句中为列分配了一个值,则无论实际列的值是否更改,该列都会被视为已更新。由于SQL Server触发器是语句级触发器而不是行级触发器,我想知道单个测试更新(mycl)如何确定所有行的更新状态。似乎UPDATE语句将为所有受影响的行或无行更新列。这是因为,如果在UPDATE语句中为列分配了一个值,则无论实际列的值是否更改,该列都会被视为已更新。