From: | Ricardo Mercado <rmercado(at)dportales(dot)cl> |
---|---|
To: | Leonel Nunez <postgres(at)enelserver(dot)com> |
Cc: | Postgres <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: Problema con trigger |
Date: | 2004-06-01 20:56:37 |
Message-ID: | 1086123397.999.9.camel@ricardo |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Usa algo como esto.
CREATE TABLE modelo (
co_modelo integer,
co_campo integer,
PRIMARY KEY (co_modelo,co_campo)
);
CREATE TABLE det_modelo (
co_modelo integer REFERENCES modelo ON DELETE ON DELETE CASCADE,
co_campo integer,
PRIMARY KEY (campox, campoy)
);
El postgres sólo con esta definición creará un trigger que controlará el
borrado.
Suerte.
El mar, 01-06-2004 a las 13:21, Leonel Nunez escribió:
> On Tue, 2004-06-01 at 10:53, Mario Soto wrote:
> > Hola lista, tengo un problema:
> >
> > tengo 2 tablas modelo y detmodelo:
> >
> > ambas tienen los campos co_modelo y co_campo;
> >
> > cuando borro un registro en la tabla modelo, tambien quiero que se
> > borren los registros en la tabla detmodelo, para lom cual he crado un
> > triger para la table modelo:
> >
> > CREATE TRIGGER "delete_desmodelo" BEFORE DELETE
> > ON "public"."modelo" FOR EACH ROW
> > EXECUTE PROCEDURE "public"."sp_delete_desmodelo"();
> >
> >
> >
> > y el procedure es:
> >
> >
> >
> > CREATE OR REPLACE FUNCTION "public"."sp_delete_desmodelo" () RETURNS
> > trigger AS'
> > begin
> > /* New function body */
> > delete from detmodelo
> > where co_modelo = old.co_modelo and co_campo = old.co_campo;
> >
> > return null;
> > end;
> > 'LANGUAGE 'plpgsql' IMMUTABLE CALLED ON NULL INPUT SECURITY INVOKER;
> >
> >
> > El problema es que no me elimina nada:
> >
> > Alguna idea.
> >
> > Gracias
> >
> >
> >
> >
> > ---------------------------(end of broadcast)---------------------------
> > TIP 5: ¿Has leído nuestro extenso FAQ?
> >
> > http://www.postgresql.org/docs/faqs/FAQ.html
> >
>
>
> y si en vez de trigger usas un
>
> ON DELTE CASCADE ?
> mas info en :
>
> http://www.postgresql.org/docs/7.4/static/ddl-constraints.html#AEN1895
>
>
From | Date | Subject | |
---|---|---|---|
Next Message | Josué Maldonado | 2004-06-01 21:01:24 | Re: administrador de postgres |
Previous Message | Fernando Papa | 2004-06-01 20:48:40 | Re: administrador de postgres |