Brock
Un activador de base de datos es un código de procedimiento que se ejecuta automáticamente en respuesta a ciertos eventos en una tabla en particular en una base de datos. Los activadores pueden restringir el acceso a datos específicos, realizar registros o auditar modificaciones de datos.
Hay dos clases de disparadores, son "disparadores de fila" o "disparadores de declaración". Con los desencadenadores de fila, puede definir una acción para cada fila de una tabla, mientras que los desencadenantes de declaraciones ocurren solo una vez por instrucción INSERT, UPDATE o DELETE. Los activadores no se pueden utilizar para auditar la recuperación de datos.
Cada clase puede ser de varios tipos. Hay "ANTES de los disparadores" y "DESPUÉS de los disparadores" que identifica el tiempo de ejecución del disparador. También hay un "disparador EN VEZ DE" que es un disparador condicional que se disparará en lugar de la declaración de disparo. Sin embargo, "INSTEAD OF trigger" solo está disponible para las vistas.
Por lo general, hay tres EVENTOS desencadenantes que hacen que el desencadenador 'se active':
evento INSERT (cuando se inserta un nuevo registro en la base de datos).
ACTUALIZAR evento (ya que se está cambiando un registro).
Evento DELETE (ya que se está eliminando un registro).
El estándar SQL: 2003 exige que los disparadores den a los programadores acceso a las variables de registro mediante una sintaxis como REFERENCING NEW AS n. Por ejemplo, si un activador está monitoreando los cambios en una columna de salario, se podría escribir un activador como el siguiente: