Trigger bewirkt Endlosschleife?!
Hallo!
Ich habe einen Trigger erstellt, dass nachdem ein Datensatz geupdatet
wurde, in dem Feld "time_update" der aktuelle Timestamp gesetzt
wird.
Ich werde das Gefühl nicht los, dass es dabei zu einer Endlosschleife
kommt, weil die die Funktion set_time_update () ein Update durchführt
und PostgreSQL benötigt eine Weile und liefert dann die Fehlermeldung
zurück, dass ich den von max_stack_depth anpassen sollte.
CREATE TRIGGER tg_set_time_update AFTER UPDATE
ON object FOR EACH ROW
EXECUTE PROCEDURE set_time_update();
CREATE OR REPLACE FUNCTION set_time_update () RETURNS trigger AS
$$
BEGIN
EXECUTE 'UPDATE ' || quote_ident(TG_RELNAME) || ' SET time_update = now() WHERE oid =' || quote_literal(OLD.oid);
RETURN NULL;
END;
$$
LANGUAGE 'plpgsql';
André Laugks
Home |
Main Index |
Thread Index