From: | mauricio pullabuestan <jmauriciopb(at)yahoo(dot)es> |
---|---|
To: | Pgsql-es-ayuda <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | disable triggers dentro de una función afecta a la conexión actual o todas |
Date: | 2016-08-10 14:52:14 |
Message-ID: | 1273627295.20986510.1470840734066.JavaMail.yahoo@mail.yahoo.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Buen día
Tengo varias tablas que tiene un trigger que concatenan datos para ingresarlos en otra tabla.
En algunas funciones hago update masivos a estas tablas pero no necesito que el trigger se ejecute
CREATE OR REPLACE FUNCTION miesquema.mifuncion()
RETURNS void AS
$BODY$
BEGIN
...
...
ALTER TABLE miesquema.mitabla DISABLE TRIGGER ALL;
Update miesquema.mitabla
set campo1 = t.campo1
, campo2 = t.campo2
, campo3 = t.campo3
From t
Where mitabla.id = t.id;
ALTER TABLE miesquema.mitabla ENABLE TRIGGER ALL;
END;
$BODY$
LANGUAGE plpgsql VOLATILE
COST 100;
Hay varios usuarios que actualizan, insertan y elimina en estas tablas y que necesita del trigger activo.
Todos los DML y funciones se ejecutan por medio de aplicaciones y cada una maneja su propia conexión.
Al ejecutar la función que desactiva el trigger y mientras dura la ejecución, los triggers están desactivados solo para esta conexión o para todas las conexiones?
Si los triggers están desactivados para todas las conexiones existe alguna manera de decir, quiero desactivar los triggers solo para esta conexión?
Saludos.
Mauricio
-
Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda(at)postgresql(dot)org)
Para cambiar tu suscripcin:
http://www.postgresql.org/mailpref/pgsql-es-ayuda
From | Date | Subject | |
---|---|---|---|
Next Message | Francisco Olarte | 2016-08-10 15:06:07 | Re: [pgsql-es-ayuda] disable triggers dentro de una función afecta a la conexión actual o todas |
Previous Message | jvenegasperu . | 2016-08-09 21:42:23 | Re: postgresql.conf |