Trigger haben spezielle INSERTED
und DELETED
Tabellen, um „vorher“- und „nachher“-Daten zu verfolgen. Sie können also so etwas wie IF EXISTS (SELECT * FROM DELETED)
verwenden um ein Update zu erkennen. Sie haben nur Zeilen in DELETED
beim Update, aber es gibt immer Zeilen in INSERTED
.
Suchen Sie in CREATE TRIGGER nach „inserted“.
Bearbeiten, 23. November 2011
Nach dem Kommentar ist diese Antwort nur für INSERTED
und UPDATED
Trigger.
Offensichtlich können DELETE-Trigger nicht "always rows in INSERTED
haben " wie ich oben sagte