gettting an error while defining the event name on mysqlworkbench 5.5

后端 未结 1 1830
既然无缘
既然无缘 2021-01-29 01:37

I created a stored procedure like the following:

-- --------------------------------------------------------------------------------
-- Routine DDL
-- Note: comm         


        
相关标签:
1条回答
  • 2021-01-29 02:00

    Per documentation you can't create event inside procedure body. See this post Create an event inside a procedure - SQL.

    You will have to create the procedure first and then call it from event like below

    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>
    

    Then create event calling the procedure

    DELIMITER $$  
    CREATE EVENT archivescheduler
    ON SCHEDULE EVERY 10 SECOND
    DO BEGIN
        CALL `sp_archivev3`();
    END $$
    DELIMITER ;
    

    Another Pointer: In case your stored procedure don't fire from event; you may need to check whether GLOBAL EVENT SCHEDULER is in DISABLE state. You can turn it on using below setting

    SET GLOBAL event_scheduler = ON;
    
    0 讨论(0)
提交回复
热议问题