Trigger für insert und update, das änderungsdatum

Mache ich eine einfache Tabelle mit Namen, E-Mails etc, aber ich habe auch einen ModifiedDate. Meine Idee ist, verwenden Sie einen trigger nach insert-und update-und insert-dem aktuellen Datum. Also wenn jemand etwas tut (außer löschen), um die Spalte, das Datum sollte das widerspiegeln.

Dies ist jedoch nicht arbeiten.

CREATE TRIGGER ModDate
    ON X
    AFTER INSERT, UPDATE
AS
BEGIN

    INSERT INTO X (ModifiedDate)
    VALUES (GETDATE())

END 

Nun habe ich ein paar Werte, die nicht null sein, und was dies scheint zu tun, ist zu versuchen, und erstellen Sie eine neue Zeile. Ich würde es gerne einfügen das Datum in die Zeile, wird derzeit gehandelt, ich habe keine Ahnung, wie obwohl. Auch was wenn ich 5 Zeilen auf einmal ?

  • Natürlich ist das erstellen einer neuen Zeile, Sie haben eine INSERT-Anweisung. Wenn Sie abfangen möchten den insert und/oder update ändern Sie einen der Werte, die Sie brauchen würde, um die Verwendung eines INSTEAD-of-trigger. Dann Griff die mehrere Zeilen-Operationen, die Sie benötigen, zu erstellen Sie Ihre trigger-code, so dass es Referenzen der eingelegten virtuellen Tabelle. Ich würde empfehlen, mit zwei trigger-eher als eine. Oder noch besser wäre, um diese Logik in Ihrem Verfahren.
  • Wie würde ich diese Logik in meinem "Verfahren" ?
  • Ich war der Annahme, Sie verwenden Verfahren zum aktualisieren und einfügen, aber das könnte nicht der Fall sein. 🙂
InformationsquelleAutor Kalec | 2015-03-11
Schreibe einen Kommentar