IFCD0210/Practicas/Practicas_SQL/codigo/INTRO_SQL_EVENTOS.sql
2024-04-02 13:54:03 +02:00

43 lines
1.2 KiB
SQL

---------Eventos en MySQL
--Capacidad de MySQL de ejecutar tareas en intervalos regulares o en momentos específicos.
--Para que?
--Tareas de mantenimiento en tu base de datos, limpieza de registros antiguos, optimización de tablas, promociones o períodos de prueba...
--Verificar si esta activado el programador de eventos
SHOW VARIABLES LIKE 'event_scheduler';
--Activarlo si no esta encendido
SET GLOBAL event_scheduler = ON;
--Mostrar los eventos existentes
SHOW EVENTS;
--Crear un evento estructura básica
CREATE EVENT event_name
ON SCHEDULE schedule
DO
event_body;
--Creación de un evento (aumenta los precios un 5% cada mes)
CREATE EVENT actualizar_precios
ON SCHEDULE
EVERY 1 MONTH
DO
UPDATE productos SET precio = precio * 1.05;
--ON SCHEDULE (momento de ejecución del evento)
--AT(en una fecha determinada)
ON SCHEDULE AT 'YYYY-MM-DD HH:MM:SS'
-- A una hora determinada(todos los días)
ON SCHEDULE AT '09:00:00'
--ON SCHEDULE EVERY(para indicar evento que se repite a intervalos entre dos fechas)
ON SCHEDULE EVERY interval_type [STARTS initial_date] [ENDS ending_date]
ON SCHEDULE EVERY 1 DAY
STARTS CURRENT_DATE
ENDS CURRENT_DATE + INTERVAL 1 WEEK