Re:

From: "Mario Soto" <mario_soto(at)venezolanadeavaluos(dot)com>
To: <balvarado(at)mbakercorp(dot)com>
Cc: <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re:
Date: 2004-06-01 22:59:24
Message-ID: 47886.200.35.66.77.1086130764.squirrel@mail.venezolanadeavaluos.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Hola

esta es la definicion de mi tabla:

CREATE TABLE "public"."detmodelo" (
"co_modelo" INTEGER NOT NULL,
"co_campo" INTEGER NOT NULL,
"nu_activo_fijo" VARCHAR NOT NULL,
"va_campo" VARCHAR(255),
"sq_serialcolumn" SERIAL,
"id_usuario" VARCHAR(15) NOT NULL,
CONSTRAINT "detmodelo_pkey" PRIMARY KEY("co_modelo", "co_campo",
"nu_activo_fijo"),
CONSTRAINT "detmodelo_sq_serialcolumn_key" UNIQUE("sq_serialcolumn"),
CONSTRAINT "detmodelo_fk_modelo" FOREIGN KEY ("co_modelo", "co_campo")
REFERENCES "public"."modelo"("co_modelo", "co_campo")
ON DELETE CASCADE
ON UPDATE NO ACTION
NOT DEFERRABLE
) WITH OIDS;

Pero el borrar un campo en la tabla modelo, solo lo borra en detmodelo y
no en la tabla modelo????????

No entiendo

> 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
>
> ---------------------------(end of broadcast)---------------------------
> TIP 5: ¿Has leído nuestro extenso FAQ?
>
> http://www.postgresql.org/docs/faqs/FAQ.html

In response to

  • Re: at 2004-06-01 17:34:59 from Benjamin Alvarado

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Mario Soto 2004-06-01 23:03:00 Re: Problema con trigger
Previous Message Alvaro Herrera 2004-06-01 22:32:22 Re: Cambiar formato de entrada de las fechas