这和你的记录表里的原始数量的合计没有关系,插入记录那个货物的数量一定增加,删除则一定减少,更新则检查更新前后的数量差,关键是这个变化量,比如这样(a表代表那个录入的表,b表代表那个汇总的表)插入触发器 create trigger xxxxx on dbo.a for insert as update b set 数量合计=数量合计+x.数量 from b,inserted x where 货物名=x.货物名删除触发器 create trigger xxxxx on dbo.a for delete as update b set 数量合计=数量合计-x.数量 from b,deleted x where 货物名=x.货物名更新触发器 create trigger xxxxx on dbo.a for update as declare @Num int select @Num=x.数量-y.数量 from inserted x,deleted y update b set 数量合计=数量合计+@Num from b,deleted(这里inserted也可以,都一样) x where 货物名=x.货物名
create trigger xxxxx on dbo.a
for
insert
as
update b set 数量合计=数量合计+x.数量 from b,inserted x where 货物名=x.货物名删除触发器
create trigger xxxxx on dbo.a
for
delete
as
update b set 数量合计=数量合计-x.数量 from b,deleted x where 货物名=x.货物名更新触发器
create trigger xxxxx on dbo.a
for
update
as
declare @Num int
select @Num=x.数量-y.数量 from inserted x,deleted y
update b set 数量合计=数量合计+@Num from b,deleted(这里inserted也可以,都一样) x where 货物名=x.货物名