Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Bidang stempel tanggal waktu pembaruan otomatis SQL Server

Anda dapat memiliki batasan default pada DateTime bidang yang akan menyebabkan tanggal/waktu saat ini disisipkan saat Anda menyisipkan baris baru.

Dari sana, Anda perlu bekerja dengan AFTER UPDATE pemicu yang akan memperbarui kolom tanggal/waktu Anda setiap kali baris diperbarui.

Anda tidak dapat melakukan tugas kedua ini (memperbarui cap tanggal/waktu saat memperbarui baris) menggunakan "rumus" seperti yang Anda katakan - itu tidak berfungsi seperti itu di SQL Server.

Anda perlu memberikan sesuatu pemicu seperti itu:

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. MASUKKAN MASSAL dengan kolom identitas (kenaikan otomatis)

  2. Cara memanfaatkan huruf pertama dari catatan dalam SQL

  3. Generasi waktu acak yang berbeda dalam interval tetap

  4. Apa keuntungan dari VistaDB

  5. Bagaimana fungsi konversi SQL bekerja saat mengonversi datetime menjadi float?