Hallo zusammen,
ich möchte einen Trigger bauen, der ein GatDate() über die Spalte Erledigt am macht, aber nur wenn ein Wert in Erledigt eingetragen wird. Des weiteren soll bei allen Änderungen des Datensatzes ein GetDate() über die Spalte einDatum und suser_sname() in einUser erfolgen, außer wenn etwas in die Spalte Erledigt eingetragen wird..
Kann man dies in einem Trigger lösen?
Mein Ansatz wäre:
CREATE TRIGGER trg_Insert_Update_Datum_User_Eingang ON dbo.Eingang
After INSERT, UPDATE
AS
BEGIN
SET NoCount ON
UPDATE Eingang
SET einDatum = GETDATE(), einUser = (host_name() + ' - ' + suser_sname())WHERE IDE IN (SELECT IDE FROM inserted) AND Erledigt = Null
SET ErledigtAm = GETDATE() WHERE IDE IN (SELECT IDE FROM inserted) AND Erledigt Not Null
SET nocount OFF
END;
Ich bekomme aber eine Fehlermeldung... Wo mache ich den Fehler?
ich möchte einen Trigger bauen, der ein GatDate() über die Spalte Erledigt am macht, aber nur wenn ein Wert in Erledigt eingetragen wird. Des weiteren soll bei allen Änderungen des Datensatzes ein GetDate() über die Spalte einDatum und suser_sname() in einUser erfolgen, außer wenn etwas in die Spalte Erledigt eingetragen wird..
Kann man dies in einem Trigger lösen?
Mein Ansatz wäre:
CREATE TRIGGER trg_Insert_Update_Datum_User_Eingang ON dbo.Eingang
After INSERT, UPDATE
AS
BEGIN
SET NoCount ON
UPDATE Eingang
SET einDatum = GETDATE(), einUser = (host_name() + ' - ' + suser_sname())WHERE IDE IN (SELECT IDE FROM inserted) AND Erledigt = Null
SET ErledigtAm = GETDATE() WHERE IDE IN (SELECT IDE FROM inserted) AND Erledigt Not Null
SET nocount OFF
END;
Ich bekomme aber eine Fehlermeldung... Wo mache ich den Fehler?
Comment