on 2022 Jan 22 3:53 AM
Grüße Euch, wie müsste ein Trigger aussehen, der bei der Neuanlage eines Datensatzes ein Datum in der Tabelle mit dem Server - Datum füllt. Ich mache das bisher händisch aber es ist ein riesen Aufwand... VG Franz
[Translation] Greetings, what should a trigger look like that fills a date in the table with the server date when creating a new data record. I've been doing this manually so far, but it's a huge effort
Request clarification before answering.
Hallo zusammen, habe den folgenden Trigger angelegt um ein Datum zu updaten. Der Trigger wird aber nicht ausgeführt. Muss irgend etwas aktiviert werden? VG Franz Stampflmeier
ALTER TRIGGER "Datum Angelegt" AFTER UPDATE OF "ANGELEGT" ORDER 1 ON "dba"."Trexo_Kostentraeger" FOR EACH STATEMENT BEGIN SET Angelegt = Getdate() END
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Dieser AFTER UPDATE OF Trigger wird genau dann aktiviert, nachdem ein Update erfolgt ist, das den Wert von "Angelegt" tatsächlich geändert hat. Es müsste also ein UPDATE... SET ANGELEGT = <irgendein datum="">... der Auslöser sein.
Was Du dagegen haben möchtest, ist ein BEFORE UPDATE Trigger, der den Wert direkt setzt.
Außerdem ist die Syntax für einen Statement-Level-Trigger falsch, hier müsstest Du über einen Join mit inserted erstmal die betroffenen Datensätze selektieren.
Mach einen normalen UPDATE-Trigger ohne Angabe der Spalte ((also ohne "OF Angelegt") daraus, Du möchtest ja nicht, dass der Trigger nur auslöst, wenn die Spalte Angelegt geändert wurde, sondern wenn allgemein ein Update beim Datensatz erfolgt ist. Und Du musst via REFERENCING-Klausel festlegen, mit welchem Alias Du auf den aktualisierten Datensatz zugreifen möchtest, vgl. Das Beispiel aus der Hilfe:
CREATE TRIGGER TR_update_date BEFORE INSERT, UPDATE ON GROUPO.SalesOrderItems REFERENCING NEW AS new_row FOR EACH ROW BEGIN SET new_row.ShipDate = CURRENT TIMESTAMP; END;
User | Count |
---|---|
75 | |
30 | |
9 | |
8 | |
7 | |
6 | |
6 | |
5 | |
5 | |
5 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.