UPDATE表同时运行总计和值字段

时间:2014-07-07 06:28:11

标签: c# asp.net sql-server tsql sql-update

我正在使用sql server进行db和gridview,以便在网页中显示和编辑数据。所以在行更新时,我需要为具有数值和运行总计的字段更新数据库。多个用户uID对此表进行了并发更新。

可以使用一个查询来实现......我对此持怀疑态度。所以我想做两个更新查询。但话说回来,我担心表现。

我有什么选择?

表格结构:

Id, uID, Val1, Val2, Val3, Val4, Total Val
1,  a2, 2.0,  0.5,  0.1,  0.3,  2.9
2,  b2, 0.1,  0.3,  0.5,  1.0,  1.9

编辑:总Val列规格

enter image description here

1 个答案:

答案 0 :(得分:0)

只要有任何插入或更新操作,您就可以在表上添加触发器以更新total_val。

            CREATE TRIGGER inserupdate
           ON  triggertestTable
           AFTER INSERT,UPDATE
        AS 
        BEGIN
            SET NOCOUNT ON;

            update t
            set t.total_val = t.val1+t.val2+t.val3+t.val4
            from triggertestTable t
            inner join inserted i
            on t.uId = i.uId
            inner join updated u
            on u.uId = t.uId

        END
        GO