【发布时间】:2018-07-06 14:59:03
【问题描述】:
我希望下面的触发器仅在客户地址已更改的行中将 NOA 列更新 +1。
我运行查询,只更新了一条记录中的客户地址,但所有 7 条记录中的 NOA 从 0 变为 1。怎么做?
create trigger track_updates
on CstmrEng.tblCustomer
after update
as
if (UPDATE(CustomerAddress))
update CstmrEng.tblCustomer
set NOA = NOA +1
【问题讨论】:
-
如果真的只更改了一行,为什么您认为触发器会在所有行上运行?
-
查看您的更新声明。当然它会更新整个表格。
标签: sql sql-server triggers sql-server-2016