Noob的问题是,每当我更改SQL Server 2008 R2表中的某个记录时,我都想增加一个RevisionId记录。为此,我使用以下语法:
UPDATE TheTable SET RevisionId=(SELECT RevisionId FROM TheTable WHERE Id=@id) + 1 WHERE Id=@id;
顺便说一句,我要把它放到触发器中,以便自动发生,但是虽然这段代码有效,但感觉很笨拙-没有更干净的方法可以做到这一点?
您不需要内部选择:
UPDATE TheTable SET RevisionId = RevisionId + 1 WHERE Id=@id