[Pgsql-ayuda] Triggers
Gunnar Wolf
gwolf@gwolf.cx
Mon, 05 Jan 2004 15:53:01 -0600
Patricio Muñoz dijo [Mon, Jan 05, 2004 at 06:22:13PM -0300]:
> Estimados,
> Tengo una funcion (foo_funcion) escrita en lenguaje Perl dentro de Postgres,
> la cual recibe como parametro un string, lo procesa para luego retornar el
> string modificado. La idea es crear un trigger que automatize la tarea de
> procesar cada string que es insertado en la tabla "foo_tabla". Al momento de
> crear el trigger, arroja el siguiente error:
> ERROR: CreateTrigger: function foo_funcion() must return TRIGGER.
>
> La sintaxis del trigger es la sgte:
>
> CREATE TRIGGER foo_trigger
> BEFORE INSERT OR UPDATE ON foo_tabla
> FOR EACH ROW
> EXECUTE PROCEDURE foo_funcion();
>
> alguna idea ?
Uggg... No, no vas a poder hacerlo.
http://www.postgresql.org/docs/current/static/plperl-missing.html
PL/Perl cannot be used to write trigger functions.
Esto es porque PL/Perl no puede ser utilizado para crear funciones que
regresen valores compuestos. Un trigger requiere que la función
regrese el renglón afectado (ya sea NEW u OLD).
Saludos,
--
Gunnar Wolf - gwolf@gwolf.cx - (+52-55)5630-9700 ext. 1366
PGP key 1024D/8BB527AF 2001-10-23
Fingerprint: 0C79 D2D1 2C4E 9CE4 5973 F800 D80E F35A 8BB5 27AF