115 - Disparadores (habilitar y deshabilitar)


Un disparador puede estar en dos estados: habilitado (enabled) o deshabilitado (disabled).

Cuando se crea un trigger, por defecto está habilitado.

Se puede deshabilitar un trigger para que no se ejecute. Un trigger deshabilitado sigue existiendo, pero al ejecutar una instrucción que lo dispara, no se activa.

Sintaxis para deshabilitar un trigger:

 alter trigger NOMBREDISPARADOR disable;

Ejemplo: Deshabilitamos el trigger "tr_ingresar_empleados":

 alter trigger tr_ingresar_empleados disable;
 

Sintaxis para habilitar un trigger que está deshabilitado:

 alter trigger NOMBREDISPARADOR enable;

Ejemplo: Habilitamos el trigger "tr_actualizar_empleados":

 alter trigger tr_actualizar_empleados enable;

Se pueden habilitar o deshabilitar todos los trigger establecidos sobre una tabla especifica, se emplea la siguiente sentencia;

 alter table TABLA disable all triggers;--deshabilita
 alter table TABLA enable all triggers;-- habilita

La siguiente sentencia deshabilita todos los triggers de la tabla "empleados":

 alter table empleados enable all triggers;

Podemos saber si un trigger está o no habilitado cosultando el diccionario "user_triggers", en la columna "status" aparece "enabled" si está habilitado y "disabled" si está deshabilitado.


Retornar