Как создать и установить поля для insert_date и last_modified_date в SQL Server 2008? - PullRequest
1 голос
/ 21 апреля 2011

Я бы хотел записать дату вставки и дату обновления в таблицу.Каков наилучший способ сделать это в SQL Server 2008?

Ответы [ 2 ]

3 голосов
/ 21 апреля 2011

Для даты вставки вы можете использовать следующий триггер:

   CREATE TRIGGER INSERT_DATE ON TABLE1  
   FOR INSERT
    AS

    BEGIN

        SET NOCOUNT ON

        UPDATE TABLE1
        SET  CreatedOn = GETDATE()
                FROM TABLE1 A
        INNER JOIN Inserted INS ON (INS.Id = A.Id)

        SET NOCOUNT OFF

    END

, а для обновления вы можете использовать следующий триггер:

CREATE TRIGGER Update ON TABLE1
FOR UPDATE
AS

BEGIN

    SET NOCOUNT ON

    UPDATE  TABLE1
    SET   UpdatedOn = GETDATE()
        FROM    TABLE1 A
            INNER JOIN Inserted INS ON (A.Id = INS.Id)

    SET NOCOUNT OFF

END
3 голосов
/ 21 апреля 2011

Для столбца даты вставки можно установить для столбца по умолчанию значение GETDATE() (или GETUTCDATE()).

Для даты обновления вам потребуется использовать триггер, чтобы задать для столбцатекущая дата, когда есть обновление.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...