Diego Ayala escribió:
Buenos días listeros, estoy trabajando en una BD PostgreSQL 8.2.3 sobre linux RHES 4. La consulta que tengo es la siguiente, tengo varias tablas, y varias de ellas tienen distintos triggers AFTER, me gustaria saber si alguien sabe cual de los triggers AFTER que tengo se ejecutan primero, tiene un orden de ejecucion por fecha de creación del trigger, o alguna bandera que indique cual se debe ejecutar primero ??, ejemplo, tengo triggers para auditoria y otro que actualiza registros al ocurrir algun evento,como puedo saber, o como puedo definir cual de los 2 dee ejecutarse primero..??

Lo tienes en la documentacion:
<http://www.postgresql.org/docs/8.3/static/sql-createtrigger.html>

"If multiple triggers of the same kind are defined for the same event, they will be fired in alphabetical order by name. "

Personalmente cuando necesito utilizar varios triggers en una misma tabla los nombro con dos digitos iniciales para tener claro el orden en el que se ejecutan:

CREATE TRIGGER "01_xxxxxxxx" ....
CREATE TRIGGER "03_xxxxxxxx" ....
CREATE TRIGGER "zz_log_xxxxx" ....


estoy haciendo bien al tener separados los triggers AFTER, esto lo hago por tener mejor organizado todo mi esquema, deberia de tener todas las sentencias dentro de un solo trigger AFTER ?? esta duda me surgio en estos dias y me gustaria que me pudieran ayudar sobre este punto.. Gracias x la ayuda como siempre a todos..!!


Si cada uno hace cosas distintas yo creo que es incluso recomendable tenerlos en triggers separados para hacer la estructura mas organizada.


Saludos,


--
*****************************************
Oswaldo Hernández
oswaldo (@) soft-com (.) es
*****************************************
PD:
Antes de imprimir este mensaje, asegúrese de que es necesario.
El medio ambiente está en nuestra mano.
--
TIP 2: puedes desuscribirte de todas las listas simultáneamente
   (envía "unregister TuDirecciónDeCorreo" a [email protected])

Responder a