使用SQL Server中的触发器更新版本

时间:2014-12-09 23:16:22

标签: sql-server triggers

我有一个包含几列数据的表格,以及两列rowIdrowVersionint类型。

我想在每次更新行时增加rowVersion的值,例如,如果rowVersion的当前值为2,我希望能够执行:

UPDATE table1
SET    name = 'John Smith'
WHERE  rowId = 1
  AND  rowVersion = 2;

然后触发器将rowVersion增加到3

我该怎么做? TIA

1 个答案:

答案 0 :(得分:3)

CREATE TRIGGER VersionTrigger 
        ON table1 
        after UPDATE
    AS 
       UPDATE table1 
       SET rowVersion = rowVersion +1 
       WHERE rowId IN (SELECT rowId FROM inserted)
    GO