Per documentatie kunt u geen gebeurtenis in de hoofdtekst van de procedure maken. Zie dit bericht Maak een gebeurtenis in een procedure - SQL .
U moet eerst de procedure maken en deze vervolgens vanuit het evenement oproepen zoals hieronder
DELIMITER $$
CREATE DEFINER=`MailMe`@`%` PROCEDURE `sp_archivev3`()
BEGIN
INSERT INTO
send.sgev3_archive(a_bi,
b_vc,
c_int,
d_int,
e_vc,
<Rest of the code goes here>
Maak vervolgens een evenement aan door de procedure aan te roepen
DELIMITER $$
CREATE EVENT archivescheduler
ON SCHEDULE EVERY 10 SECOND
DO BEGIN
CALL `sp_archivev3`();
END $$
DELIMITER ;
Nog een aanwijzing:voor het geval dat uw opgeslagen procedure niet wordt geactiveerd vanuit een gebeurtenis; het kan nodig zijn om te controleren of GLOBAL EVENT SCHEDULER
is in DISABLE
staat. Je kunt het aanzetten met onderstaande instelling
SET GLOBAL event_scheduler = ON;