Skip site navigation (1) Skip section navigation (2)

Re: funcionamiento diferente en triggers

From: Felipe de Jesús Molina Bravo <felipe(dot)molina(at)inegi(dot)gob(dot)mx>
To: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: funcionamiento diferente en triggers
Date: 2007-01-31 14:53:01
Message-ID: 1170255182.7873.0.camel@fjmb (view raw or flat)
Thread:
Lists: pgsql-es-ayuda
Muchas gracias por la información ... lo que encuentre lo publicaré


Seguimos


El mié, 31-01-2007 a las 11:32 -0300, Alvaro Herrera escribió:
> Felipe de Jesús Molina Bravo escribió:
> > Una disculpa por el error. Va un copy/paste de los scripts. Al terminar
> > de ejecutar el script de abajo, ya tendran datos en la tabla de producto
> > y lugar. Si hacen un "update producto set us = '2' where idp=1"
> > provocará que se borren los registros de lugar y por lo tanto el
> > contador de producto se ponga en 0 .... y claro que el atributo "us" de
> > producto en '2'.....
> 
> Creo que el problema es que la tupla que debe actualizarse en el UPDATE
> ya no existe cuando el trigger termina, puesto que le hiciste los varios
> UPDATES en el otro trigger.  La solución a esto sería, como ya
> descubriste, poner esos DELETEs a "lugar" en un trigger AFTER, porque
> así el UPDATE en producto se haría antes que esos otros DELETEs invoquen
> al trigger que hace el UPDATE.
> 
> Es posible que esto esté documentado, pero en este momento no tengo el
> tiempo de investigar el tema.
> 
> BTW en esa funcion donde te dije que pusieras RETURN NEW en lugar de
> RETURN NULL, tienes razon que no tiene nada que ver con tu problema,
> pero es confuso; yo en su lugar pondria un RAISE EXCEPTION para que sea
> muy evidente lo que deseas que suceda.
> 

In response to

pgsql-es-ayuda by date

Next:From: Edwin QuijadaDate: 2007-01-31 15:00:43
Subject: Re: Borrado de base de datos
Previous:From: Guido BarosioDate: 2007-01-31 14:49:29
Subject: Re: No puedo descargar Postresql 8.2.1 desde ningún mirror

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group