[Pgsql-ayuda] Actualizaciones en Cascada...

Alvaro Herrera Munoz alvherre@dcc.uchile.cl
Thu, 16 Oct 2003 13:50:29 -0300


On Thu, Oct 16, 2003 at 01:07:20PM +0200, Fernando San Mart?n Woerner wrote:

> Alguna idea de como poder hacer o emular un trigger para un statement,
> en la doc de pgsql dice que los trigger son solo para filas(rows), el
> problema que tengo es que si coloco los triggers para cada fila, al
> eliminar 1000 filas el trigger lo ejecuto 1000 veces, cuando en realidad
> desearia ejectuarlo una sola vez, al terminar las 1000 eliminaciones.

Se agregó soporte para 'statement-level' triggers, creo que en 7.4.  Lo malo
es que dentro del trigger no tienes acceso al conjunto de tuplas modificadas.
Parece lo más apropiado.

http://developer.postgresql.org/docs/postgres/sql-createtrigger.html
http://developer.postgresql.org/docs/postgres/trigger-example.html
 
> Se puede hacer algo asi con reglas?

En teoría sí.  En la práctica, tienes que tener cuidado con posible
recursión, y tener muy presente que una regla es una especie de macro.

-- 
Alvaro Herrera (<alvherre[@]dcc.uchile.cl>)
"El número de instalaciones de UNIX se ha elevado a 10,
y se espera que este número aumente" (UPM, 1972)