create trigger trg_test on GuanLiXingWeiKouFenQingKuang
for insert,update,delete
as
begin
    update GuanLiXingWeiJianChaBiao a
    set
        KaoHDF = a.KaoHDF-b.KouFZ
    from
        inserted b
    where 
        a.[BiaoN]=b.[BiaoN] and a.[KaoHNRH]=b.[KaoHNRH] and a.[KouFBZH]=b.[KouFBZH]
    
    update GuanLiXingWeiJianChaBiao a
    set
        KaoHDF = a.KaoHDF+b.KouFZ
    from
        deleted b
    where 
        a.[BiaoN]=b.[BiaoN] and a.[KaoHNRH]=b.[KaoHNRH] and a.[KouFBZH]=b.[KouFBZH]
end
go

解决方案 »

  1.   

    谢谢楼上的回答
    可是打不到要求
    我也不是很懂你写的意思,第二个表里的一条数据对应第一个表里的多条数据,也就是说 总分值-(多条数据的扣分值之和)=考核得分第一个表里的多条数据的条数也不是一个固定值
      

  2.   

    你的表结构没有仔细看.通过你的描述我认为 你应该在第一个表里建立触发器就可以了.因为只要第一个表的数据发生变化(增加,删除或者修改)都会引起其他两个表的变化.第一个表的某行数据发生变化,你可以利用这个修改第二个表的数据,同时加或者减第三个表的分.因为A-多次数据分和=A-第一次变化分-第二次变化分.........
      

  3.   

    怎么没人理我?
    算了
    结贴了......