¿Qué son los triggers en MySQL?

Autor: | Última modificación: 24 de noviembre de 2022 | Tiempo de Lectura: 2 minutos
Temas en este post: ,

Algunos de nuestros reconocimientos:

Premios KeepCoding

Si quieres conocer en qué consisten los triggers en MySQL, no pierdas la oportunidad y sigue leyendo este artículo.

¿Qué son los triggers en MySQL?

Dentro de los objetos utilizados para el trabajo con bases de datos en MySQL, los triggers son objetos de una base de datos que, usualmente, se relacionan con las tablas. Un trigger puede aparecer cuando se define para un acción, cuando se ejecuta. Ahora bien, un trigger se ejecuta cuando aparecen tres sentencias características de MySQL, que son: INSERT, UPDATE y DELETE.

Por ejemplo, te puedes encontrar con la acción de un trigger en el momento en que se inserta un récord o cuando se actualiza una columna.

Ahora bien, su nombre se deriva por el comportamiento que presentan en su funcionamiento, pues se ejecutan cuando surge un evento al que el elemento se encuentra asociado.

Ejemplo de cómo funciona los triggers en SQL

A continuación, te vamos a presentar el funcionamiento del elemento trigger en MySQL a partir de un ejercicio práctico en el que nos enfocamos en realizar una base de datos de Los Simpson.

En este caso, vamos a instanciar un trigger que nos permita establecer una clave encriptada para un récord nuevo, que se irá agregando después de haber insertado la tabla de personajes encriptados de la serie animada.

Para este proceso, primero tienes que crear una tabla con dos columnas (descripción de personajes y clave), donde aparecen tipos de datos preestablecidos, en este caso, VARCHAR. Después, podrás utilizar la sentencia para sacar un TRIGGER que, ahora, llamaremos como trigger_clave y que deberás instanciar después de haber creado la tabla y para cada récord nuevo que se cree. De esta manera, crearás una tabla encriptada en cada nuevo récord.

USE SPRINGFIELD;

DROP TABLE IF EXISTS TMP_PERSONAJES_ENCRIPTADOS;

CREATE TABLE TMP_PERSONAJES_ENCRIPTADOS

(DESC_PERSONAJE VARCHAR (255)

, CLAVE VARCHAR (255));

DROP TRIGGER IF EXITS trigger_clave;

CREATE TRIGGER trigger_clave BEFORE INSERT ON TMP_PERSONAJES_ENCRIPTADOS

FOR EACH ROW SET NEW.CLAVE = MD5 (NEW.DESC_PERSONAJE);

Este es el reflejo en forma de código de la creación de un trigger dentro de una tabla de bases de datos.

Ejecutarlo y ver su funcionamiento

Ahora que ya tienes creado el procedimiento con la herramienta trigger, es hora de ejecutarla y ver si funciona. Para ello, podemos abrir una nueva ventana, donde escribimos todas las sentencias necesarias. Aquí debe recordar que tendrás que usar el INSERT, UPDATE y DELETE, según necesites, para encontrar el trigger actuando en el resultado.

Para ejecutar nuestro ejemplo, puedes reproducir lo siguiente:

USE SPRINGFIELD

INSERT INTO TMP_PERSONAJES_ENCRIPTADOS (DESC_PERSONAJE)

SELECT DESC_PERSONAJE

FROM PERSONAJES;

COMMIT;

SELECT * FROM TMP_PERSONAJES_ENCRIPTADOS;

Una vez ejecutadas estas instrucciones, te vas a encontrar con una tabla de datos con los resultados de la acción de trigger.

Qué son los triggers en MySQL

¡Sigue aprendiendo!

Ahora que sabes qué son los triggers en MySQL, puedes integrarlos en tus proyectos de código que involucren el uso de MySQL para su desarrollo y funcionamiento. Si quieres seguir aprendiendo acerca de este proceso, te invitamos a nuestro Big Data, Inteligencia Artificial & Machine Learning Full Stack Bootcamp, una formación íntegra centrada tanto en la teoría como en la práctica. ¡Solicita información y averigua cómo impulsar tu carrera!

👉 Descubre más del Big Data, Inteligencia Artificial & Machine Learning Full Stack Bootcamp ¡Descarga el temario!

👉 Prueba el Bootcamp Gratis por una Semana ¡Empieza ahora mismo!

👉 Conoce nuestros otros Bootcamps en Programación y Tecnología

¡CONVOCATORIA ABIERTA!

Big Data, IA & Machine Learning

Full Stack Bootcamp

Clases en Directo | Profesores en Activo | Temario 100% actualizado