我正在尝试创建一个MySQL事件,这就是我正在使用的语法:
CREATE EVENT test
ON SCHEDULE AT FROM_UNIXTIME(1428005286)
DO
BEGIN
UPDATE blog_posts SET status = 'published' WHERE id = 5;
END
当我在 Node.js (使用mySQL适配器,在Sails.js下)运行它时,我没有收到任何错误,但是事件没有被创建。当我直接通过phpMyAdmin运行它时,我得到:
#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 5
我还尝试在END中添加分号,使其成为END;
,并删除所有分号,并返回一个稍微类似的错误:
#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 'END' at line 6
我不知道为什么会这样。任何帮助表示赞赏。感谢。
答案 0 :(得分:0)
您可能需要从以下开始:创建DEFINER = root
@ localhost
...
此外,由于这是一个单行,您不需要BEGIN..END