CREATE PROCEDURE update_a() UPDATE ecs_users SET user_name = '123';CREATE event update_aa;
ON SCHEDULE EVERY 30 SECOND;
ON SCHEDULE AT DATE_ADD(NOW(),INTERVAL 1 MINUTE);
ON COMPLETION PRESERVE;
DO CALL update_a();
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1

解决方案 »

  1.   

    delimiter $
    CREATE PROCEDURE update_a() 
    begin
    UPDATE ecs_users SET user_name = '123';
    end
    $
    delimiter ;
      

  2.   

    你需要指定 delimiter ,否则MYSQL工具看到;分号就提交了,而这此你的创建过程语句显然还没有结束。
      

  3.   

    你是在MYSQL的命令行下输入的吧,加入 DELIMITER修改语句结束符,否则MYSQL认为语句结束,提交,会提示出错
      

  4.   

    加入delimiter修改结束语句符,否则认为结束语句。
      

  5.   


    CREATE PROCEDURE update_a() UPDATE ecs_users SET user_name = '123'; 
    DELIMITER $
    CREATE event update_aa;
    BEGIN
    ON SCHEDULE EVERY 30 SECOND; 
    ON COMPLETION PRESERVE; 
    DO CALL update_a();
    END 
    $
    DELIMITER;
    语句还是报错,求解答@!!!!