SQL Server automatic update datetimestamp field

后端 未结 1 803
一个人的身影
一个人的身影 2020-12-20 06:45

In SQL Server 2008 R2\" I am trying to insert a formula in SQL Server that will update the current value in the LastUpdatedTimestamp field to now i.e. get

相关标签:
1条回答
  • 2020-12-20 07:08

    You can have a default constraint on your DateTime field that will cause the current date/time to be inserted when you insert a new row.

    From there on, you need to work with a AFTER UPDATE trigger that will update your date/time column each time the row is updated.

    You cannot do this second task (updating a date/time stamp when updating the row) using a "formula" as you said - it just doesn't work that way in SQL Server.

    You need to provide a trigger something along those lines:

    CREATE TRIGGER trgYourTableUpdateTimestamp
      ON dbo.YourTable FOR UPDATE
    AS BEGIN
       UPDATE 
          dbo.YourTable 
       SET 
          YourTimeStampColumn = GETDATE()
       FROM 
          Inserted Ins
       WHERE
          dbo.YourTable.SomeUniqueId = Ins.SomeUniqueId
    END
    
    0 讨论(0)
提交回复
热议问题