2009-03-17 6 views

Antwort

1

Spalten hinzufügen zu Ihrem Tisch

ALTER TABLE yourTable ADD 
    Inserted datetime NULL, 
    Updated datetime NULL 
GO 

ein Update erstellen und Insert-Trigger die Spalten

CREATE TRIGGER yourTableInsertTrigger 
    ON yourTable 
    AFTER INSERT 
AS 
BEGIN 
    Update yourTable Set Inserted = getdate() 
    from Inserted 
    Where yourTable.Key = Inserted.Key 
END 
GO 


CREATE TRIGGER yourTableUpdateTrigger 
    ON yourTable 
    AFTER UPDATE AS 
BEGIN 
    Update yourTable Set Updated = getdate() 
    from Updated 
    Where yourTable.Key = Updated.Key 
END 
GO 

Jetzt zu aktualisieren, wenn Sie wirklich sauber sein wollen, sollten Sie sicherstellen, dass diese beiden Spalten können nicht geändert/aktualisiert werden, indem für den anderen Zugriff auf die Daten Ansichten anstelle von direktem Tabellenzugriff verwendet werden. Auch wenn Ihre Primärschlüssel nicht konsistent sind und Sie viele Tabellen haben, würde ich vorschlagen, dass Sie CodeGeneration verwenden, um die SQL zu erstellen. MyGeneration würde gut tun.

0

Ich denke, der eingefügte Trigger ist veraltet. Fügen Sie einfach getdate() zu der eingefügten Spalte als Standardwert statt null hinzu.

+0

Funktioniert nur für den ursprünglichen Einsatz, nicht für Updates. – devstuff

Verwandte Themen