Disable Trigger..

23/01/2009 - 23:36 por Gijon | Informe spam
Hola tengo una tabla la cual por cuestiones de diseño tiene 2 trigger.

El trigger A se dispara cuando hay INSERT,UPDATE y DELTED y le Trigger B se
dispara solo cuando hay un INSERT
El triiger B es muy sencillo y solo actualiza algunos campos de su misma
tabla con una sentncia Update Tabla set ... where.
Lo que necesito es que cuando haya Insert ( obiviamente se disparan ambos
trigger) y se dispare el trigger B este antes de ejecutar su UPDATE
deshabilite el Trigger A y en cuanto la sentencia UPDATE termine lo vuelva a
habilitar.

Con esto quiero evitar el doble disparo de los trigger.
Espero darme a entender.

He usado la sentencia Disable Trigger pero no me va.

Gracias.
 

Leer las respuestas

#1 Gustavo Larriera (MVP)
24/01/2009 - 01:59 | Informe spam
No se puede hacer de la manera que usted quiere. El DISABLE TRIGGER no se
puede ejecutar durante la ejecución de un trigger.

Usted deberá revisar un poco sus triggers para ver si se puede separar el
código de alguna manera.

Gustavo Larriera, Microsoft MVP
http://www.linkedin.com/in/gustavolarriera
Este mensaje se proporciona tal como es, sin garantías de ninguna clase.



"Gijon" wrote:

Hola tengo una tabla la cual por cuestiones de diseño tiene 2 trigger.

El trigger A se dispara cuando hay INSERT,UPDATE y DELTED y le Trigger B se
dispara solo cuando hay un INSERT
El triiger B es muy sencillo y solo actualiza algunos campos de su misma
tabla con una sentncia Update Tabla set ... where.
Lo que necesito es que cuando haya Insert ( obiviamente se disparan ambos
trigger) y se dispare el trigger B este antes de ejecutar su UPDATE
deshabilite el Trigger A y en cuanto la sentencia UPDATE termine lo vuelva a
habilitar.

Con esto quiero evitar el doble disparo de los trigger.
Espero darme a entender.

He usado la sentencia Disable Trigger pero no me va.

Gracias.


Preguntas similares