disable triggers dentro de una función afecta a la conexión actual o todas

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

Responses

Browse pgsql-es-ayuda by date

  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