From: | "Benjamin Alvarado" <balvarado(at)mbakercorp(dot)com> |
---|---|
To: | <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: |
Date: | 2004-06-01 17:34:59 |
Message-ID: | s0bc861b.053@mbgwia.mbakercorp.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Por que no usas,
Si solo quieres que borre
REFERENCES MODELO ON DELETE CASCADE
Si quieres que te actualice
REFERENCES MODELO ON DELETE CASCADE ON UPDATE CASACADE
en la definicion del campo co_modelo de tu tabla detmodelo, con esto,
cuando borres
o actualices algun dato en la tabla modelo se borraran todos los
resgistros de tu tabla
detmodelo, que coincidan con el campo borrado en la tabla modelo.
Espero te sirva
>>> "Mario Soto" <mario_soto(at)venezolanadeavaluos(dot)com> 01/06/2004
11:52:51 am >>>
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 1: para suscribirte y desuscribirte, escribe a
majordomo(at)postgresql(dot)org
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2004-06-01 17:37:22 | Re: Migrar BD |
Previous Message | Alvaro Herrera | 2004-06-01 17:34:38 | Re: Problema con trigger |