Skip site navigation (1) Skip section navigation (2)

Peripheral Links

Header And Logo

PostgreSQL
| The world's most advanced open source database.

Site Navigation

Search for
  Advanced Search

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

Privacy Policy | PostgreSQL Archives hosted by Command Prompt, Inc. | Designed by tinysofa
Copyright © 1996 – 2008 PostgreSQL Global Development Group