日期:2014-05-17  浏览次数:20456 次

这个问题可以使用触发器解决吗
例如我有两个表一个主表,一个附表

主表T1(ID,TotalMoney)
附表T2(ID,ZBID,Money)
附表的ZBID=主表的ID

其中主表的总金额=附表的Money加起来

现在我要修改附表,我想做到的是修改之后能主表能自动同步金额,例如我删除附表某个ZBID对应的其中一条记录,则主表自动同步对应ID的总金额

例子:T1
1,150
2,200
T2
1,1,50
2,1,100
1,2,50
2,2,70
3,2,80

例如 当我删除T2里面第5条的时候 则T1的第二条金额自动更新为120

请问如何实现,如果可以通过触发器的话,应该怎么写,本人从未用过触发器,惭愧。

------解决方案--------------------
create  trigger reminder1
on T2
after insert,update,delete
as
begin

update T1 set mount=mount-
(
select mount from deleted where T1.ID=deleted.ID
)

update T1 set mount=mount+
(
select mount from inserted where T1.ID=inserted.ID
)
end