1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
| -- ==================
-- Procedure `tester`
-- ==================
DROP PROCEDURE IF EXISTS `tester`;
DELIMITER $$
CREATE PROCEDURE `tester` ()
DETERMINISTIC
NO SQL
BEGIN
DECLARE _date date DEFAULT NULL;
SELECT `date` INTO _DATE from `votre_table` where `date` = (select max(`date`) from `votre_table`);
truncate table `alerte`;
IF (TIMESTAMPDIFF(SECOND, now(), _date) > 30) then INSERT INTO `alerte` (`libelle`) value ('votre message'); END IF;
END $$
-- ==================
-- Evènement `alerte`
-- ==================
CREATE EVENT alerte
ON SCHEDULE
EVERY 1 SECOND
STARTS CURRENT_TIMESTAMP
ENDS CURRENT_TIMESTAMP + INTERVAL 1 year
ON COMPLETION PRESERVE ENABLE
DO BEGIN
CALL tester();
END$$
DELIMITER ;
-- ========================
-- Lancement du `scheduler`
-- ========================
SET GLOBAL event_scheduler = ON; |
Partager