From: | Miguel Rodríguez Penabad <penabad(at)gmail(dot)com> |
---|---|
To: | el-PRiNCiPiTo <el-PRiNCiPiTo(at)terra(dot)es> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: Trigger ON DELETE no me elimina la fila |
Date: | 2008-05-22 10:55:39 |
Message-ID: | 95335e4e0805220355j47fefeew76679a1f4322d850@mail.gmail.com |
Views: | Whole Thread | Raw Message | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
2008/5/22 el-PRiNCiPiTo <el-PRiNCiPiTo(at)terra(dot)es>:
> Hola a todos,
> he creado unos trigger para que actúen al actualizar, crear y eliminar
> registros de una tabla. He creado uno para cada caso porque prefiero
> tenerlos separados para ver cual me va bien y cual no. El caso es que el de
> las eliminaciones no me funciona. Cuando elimino el registro se vuelve a
> crear. Pongo todos para ver si los que me funcionan os parece que están bien
> o se pueden mejorar y para ver si alguien me dice que hago mal en el delete.
> Muchas gracias.
...
> CREATE OR REPLACE FUNCTION prioridad_eliminar()
> RETURNS "trigger" AS
> $BODY$BEGIN
> IF old.idprioridad <> 8 THEN
> UPDATE prioridad SET ocupada = false WHERE idprioridad =
> old.idprioridad;
> END IF;
> return null;
Si devuelves null el evento delete no se lleva a cabo.
Tienes que tener "return OLD;"
> END;$BODY$
> LANGUAGE 'plpgsql' VOLATILE;
> ALTER FUNCTION prioridad_eliminar() OWNER TO postgres;
--
Miguel Rodríguez Penabad
From | Date | Subject | |
---|---|---|---|
Next Message | Fernando Aguada | 2008-05-22 11:43:10 | Array variables y/o redimensionables |
Previous Message | el-PRiNCiPiTo | 2008-05-22 10:36:58 | Trigger ON DELETE no me elimina la fila |