trigger ON delete
От | Uroš Gruber |
---|---|
Тема | trigger ON delete |
Дата | |
Msg-id | 20021115071044.5094C7061B@citka.sir-mag.com обсуждение исходный текст |
Ответы |
Re: trigger ON delete
|
Список | pgsql-general |
Hi! I have problems with triggers on delete and i get some kind of loop. Here is my function. CREATE FUNCTION nset_delete() RETURNS opaque AS \' DECLARE visits int4; BEGIN visits := OLD.r - OLD.l + 1; EXECUTE \'\'DELETE FROM \'\' || TG_RELNAME || \'\' WHERE l BETWEEN \'\' || OLD.l || \'\' AND \'\' || OLD.r || \'\';\'\'; EXECUTE \'\'UPDATE \'\' || TG_RELNAME || \'\' SET l=l-\'\' || visits || \'\' WHERE l>\'\' || OLD.l || \'\';\'\'; EXECUTE \'\'UPDATE \'\' || TG_RELNAME || \'\' SET r=r-\'\' || visits || \'\' WHERE r>\'\' || OLD.r || \'\';\'\'; RETURN NULL; END; \' LANGUAGE \'plpgsql\'; CREATE TRIGGER nset_delete BEFORE DELETE ON nset FOR EACH ROW EXECUTE PROCEDURE nset_delete(); When i delete some data from table nset and when it gets to first EXECUTE (wich is DELETE) it fires trigger again and again. How can i solve this. Is this a bug? -- \"Don\'t worry about people stealing your ideas. If your ideas are any good, you\'ll have to ram them down people\'s throats.\" -- Howard Aiken
В списке pgsql-general по дате отправления: