Der created Spalte ist einfach - nur ein DATETIME2(3) Spalte mit einer Standardeinschränkung, die festgelegt wird, wenn eine neue Zeile eingefügt wird:
Created DATETIME2(3)
CONSTRAINT DF_YourTable_Created DEFAULT (SYSDATETIME())
Wenn Sie also eine Zeile in YourTable einfügen und geben Sie keinen Wert für Created an , wird es auf das aktuelle Datum und die aktuelle Uhrzeit eingestellt.
Der modified ist etwas mehr Arbeit, da Sie einen Trigger für AFTER UPDATE schreiben müssen Fall aktualisieren und aktualisieren - Sie können SQL Server nicht deklarativ anweisen, dies für Sie zu tun....
Modified DATETIME2(3)
und dann
CREATE TRIGGER updateModified
ON dbo.YourTable
AFTER UPDATE
AS
UPDATE dbo.YourTable
SET modified = SYSDATETIME()
FROM Inserted i
WHERE dbo.YourTable.PrimaryKey = i.PrimaryKey
Sie müssen dem Inserted beitreten Pseudotabelle, die alle Zeilen enthält die mit Ihrer Basistabelle auf Ihrem Primärschlüssel aktualisiert wurden für diese Tabelle.
Und Sie müssen dieses AFTER UPDATE erstellen Trigger für jede Tabelle, die Sie einen modified haben möchten Spalte ein.