语法错误创建事件;独立查询工作正常
Syntax error creating event; query works fine standalone
我想在 MYSQL 数据库上创建事件。当我 运行 创建 EVENT SCHEDULE 的查询时,我得到了这个错误:
1064 - 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 8
有线的事情是,当我 运行 在 EVENT SCHEDULE 中查询时,它 运行 没有任何错误:
这是我正在使用的代码
CREATE DEFINER=`root`@`localhost` EVENT `updateGoals` ON SCHEDULE EVERY 20 MINUTE STARTS '2015-01-01 00:01:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
UPDATE `scores` SET `goals`='0'
WHERE `goals` >'0'
AND
( `PROCESS_DESC` LIKE '%No Goals%'
OR `PROCESS_DESC` LIKE '%NG %'
OR `PROCESS_DESC` LIKE '%Goals 0%');
END$$
这就是你想要的。这个定界符令人讨厌且令人困惑。
DELIMITER $$
CREATE DEFINER=`root`@`localhost`
EVENT `updateGoals`
ON SCHEDULE EVERY 20 MINUTE
STARTS '2015-01-01 00:01:00'
ON COMPLETION NOT PRESERVE ENABLE
DO BEGIN
UPDATE `scores` SET `goals`='0'
WHERE `goals` >'0'
AND
( `PROCESS_DESC` LIKE '%No Goals%'
OR `PROCESS_DESC` LIKE '%NG %'
OR `PROCESS_DESC` LIKE '%Goals 0%');
END$$
您注意到您的活动只会 运行 一次,对吧?它说 ON COMPLETION NOT PRESERVE
.
如果您希望活动继续进行并保持 运行ning 在您 DROP
之前按计划进行,请改用 ON COMPLETION PRESERVE
。
我想在 MYSQL 数据库上创建事件。当我 运行 创建 EVENT SCHEDULE 的查询时,我得到了这个错误:
1064 - 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 8
有线的事情是,当我 运行 在 EVENT SCHEDULE 中查询时,它 运行 没有任何错误:
这是我正在使用的代码
CREATE DEFINER=`root`@`localhost` EVENT `updateGoals` ON SCHEDULE EVERY 20 MINUTE STARTS '2015-01-01 00:01:00' ON COMPLETION NOT PRESERVE ENABLE DO BEGIN
UPDATE `scores` SET `goals`='0'
WHERE `goals` >'0'
AND
( `PROCESS_DESC` LIKE '%No Goals%'
OR `PROCESS_DESC` LIKE '%NG %'
OR `PROCESS_DESC` LIKE '%Goals 0%');
END$$
这就是你想要的。这个定界符令人讨厌且令人困惑。
DELIMITER $$
CREATE DEFINER=`root`@`localhost`
EVENT `updateGoals`
ON SCHEDULE EVERY 20 MINUTE
STARTS '2015-01-01 00:01:00'
ON COMPLETION NOT PRESERVE ENABLE
DO BEGIN
UPDATE `scores` SET `goals`='0'
WHERE `goals` >'0'
AND
( `PROCESS_DESC` LIKE '%No Goals%'
OR `PROCESS_DESC` LIKE '%NG %'
OR `PROCESS_DESC` LIKE '%Goals 0%');
END$$
您注意到您的活动只会 运行 一次,对吧?它说 ON COMPLETION NOT PRESERVE
.
如果您希望活动继续进行并保持 运行ning 在您 DROP
之前按计划进行,请改用 ON COMPLETION PRESERVE
。