Trigger

disparador

Un trigger o disparador es un bloque de código almacenado en el Sistema Gestor de Base de Datos (SGBD).

De la misma forma que en una base de datos ubicada en un SGBD se guardan tablas, vistas, formularios, informes; también se pueden guardan en ella los triggers.

La intención en la creación de un trigger es conseguir que durante el funcionamiento del SGBD, automáticamente se active, se ponga en ejecución su código cuando ocurra o suceda algo determinado. Es decir, no se llama de forma explícita al trigger para que ejecute su código, sino que este se activará de forma automática a consecuencia de un determinado suceso.

Y, ¿ Qué es lo que puede ocurrir para que que automáticamente se ejecute el código asociado a un trigger?

Si conocéis el lenguaje SQL entenderéis que existen múltiples comandos cada uno de los cuales empleados para una determinada acción. De todos estos comandos existen tres que provocan una alteración en el contenido de las tablas de una base de datos: INSERT, DELETE y UPDATE. El primero de ellos da de alta un nuevo registro en una tabla de la base de datos, el segundo borra algún registro de la tabla y UPDATE modifica el contenido de los registros de una tabla.

Pués bien, en un determinado SGBD podemos crear un trigger bajo tres premisas distintas, teniendo en cuenta que su código se podrá activar antes o después de utilizarse alguna de las tres instrucciones SQL anteriormente mencionadas. Por ejemplo, podría programar un trigger de forma que se activaría automáticamente su código justo antes de ejecutarse el comando del SQL DELETE sobre una determinada tabla, de forma que antes de ser borrado un registro, este, el trigger que se ha activado a consecuencia de la ejecución de esta instrucción DELETE, lo guardará en una tabla dedicada a tener una copia de cada uno de los registros que se han eliminado de otra tabla.

No todos los SGBD admiten la creación y uso de los triggers. El Sistema Gestor de Base de Datos MySQL, objeto de estudio en este tema del curso sí lo admite. A la creación y uso de los triggers en un entorno MySQL dedicaremos nuestro tiempo en el tema que ahora iniciamos.

Jesús Albert

Profesor de Base de Datos en el diclo de DAW

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *