sqlserver 触发器
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sqlserver 触发器相关的知识,希望对你有一定的参考价值。
我有两个表 tb_material ID为主键 name 为唯一键
另一个表td_recipe ID为主键 name键和tb_material里的name是一样的
因为te_recipe里记录的是td_material里的信息,我现在想键个触发器,只要td_material中的weight 或price改变的时候就改变所有相同name的price和weight 谁帮我写个
for update
as
begin
declare @weightBefore nvarchar(4000)
declare @weightAfter nvarchar(4000)
declare @priceBefore decimal(18,2)
declare @priceAfter decimal(18,2)
set @weightBefore=(select weight From deleted)
set @priceBefore=(select price From deleted)
set @weightAfter=(select weight From Inserted)
set @priceAfter=(select price From Inserted)
update te_recipe set weight=@weightAfter where weight=@weightBefore;
update te_recipe set price=@priceAfter where price=@priceBefore;
end
如果是单纯的更新,上面就可以了
如果还有其他条件,比如id相同什么的参考上面的添加相应的逻辑就可以了
以上是关于sqlserver 触发器的主要内容,如果未能解决你的问题,请参考以下文章