Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Поле за клеймо за дата и час на SQL Server за автоматично актуализиране

Можете да имате ограничение по подразбиране за вашия DateTime поле, което ще доведе до вмъкване на текущата дата/час, когато вмъкнете нов ред.

Оттам нататък трябва да работите с AFTER UPDATE тригер, който ще актуализира вашата колона за дата/час всеки път, когато редът се актуализира.

Не можете да изпълните тази втора задача (актуализиране на клеймо за дата/час при актуализиране на реда) с помощта на "формула", както казахте - просто не работи по този начин в SQL Server.

Трябва да предоставите тригер нещо по този начин:

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



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да създадете csv изходен файл от съхранена процедура в SQL Server

  2. разделяне на колона за дата и час на година, месец и седмица

  3. Йерархичен списък с типове тригерни събития в SQL Server 2019

  4. SQL Server:максималният брой редове в таблицата

  5. Как да върнете назад или да извършите транзакция в SQL Server