无法在MySQL中安排存储过程

时间:2012-04-17 10:47:59

标签: mysql stored-procedures

我在这里做错了什么?我只想让程序每天运行。

CREATE EVENT my_event
ON SCHEDULE EVERY 1 DAY
DO
BEGIN
CALL my_procedure("foo");
END $$

或者

CREATE EVENT my_event
ON SCHEDULE EVERY 1 DAY
DO CALL my_procedure("foo");

得到

ERROR 1064 (42000): 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 'EVENT my_event
ON SCHEDULE EVERY 1 DAY
DO
BEGIN
CALL my_procedure' at line 1

2 个答案:

答案 0 :(得分:1)

尝试此查询

检查事件调度程序是否已关闭

select @@event_scheduler

如果关闭,你必须将其改为

SET @@global.event_scheduler = ON;

如果mysql服务器关闭,事件调度程序将再次关闭

答案 1 :(得分:0)

如果您使用的是Windows,那么

How to schedule a mysql stored procedure in windows?

此问题的评论显示如何创建要作为将调用该过程的预定作业运行的批处理文件。