2013-01-24 9 views

回答

4

恕我直言,触发是要走的路,但如果你一定要控制所有的更新,那么你可以这样简单做:

UPDATE mytable 
    SET somefield='newvalue', 
     update_count = update_count+1 
    WHERE id=n 
+0

真的很酷的答案。谢谢。为什么我以前没有这样想过。 –

+0

投票的原因是什么? – peterm

+0

@VimalPatel记住,只有当你更新你的行时,你才需要更新你的行,所以如果你的数据被其他地方改变了,说没有实现这个更新的存储过程,你的count列不会更新。 –

0
CREATE TRIGGER CountRows 
    ON TestCount 
    after Update 
AS 
Update TestCount set Cnt = Cnt +1 where ID in (select ID from inserted) 
GO 

每当连续变化一定的价值, grigger将+1添加到同一行的Cnt列值。