MySQL事件错误

时间:2015-04-16 20:54:34

标签: mysql

我正在尝试创建一个事件,每天下午3点将定期付款添加到付款表。 payment.day是一个表示日期编号的整数。这就是我所拥有的:

CREATE EVENT add_recurring
ON SCHEDULE EVERY 1 DAY
    STARTS '2015-16-04 15:00:00'
DO INSERT INTO payment (amount, note, custID, type) SELECT amount, note, custID, 'C' FROM recurring WHERE day = DATE_FORMAT(CURRENT_DATE(), %e)

我收到以下错误:#1064 - 您的SQL语法出错;检查与MySQL服务器版本对应的手册,以便在第4行的“%e”附近使用正确的语法

任何人都可以看到错误并向我解释我错过了什么吗?

2 个答案:

答案 0 :(得分:0)

格式应为字符串:

CREATE EVENT add_recurring
ON SCHEDULE EVERY 1 DAY
STARTS '2015-16-04 15:00:00'
DO INSERT INTO payment (amount, note, custID, type) SELECT amount, note, custID, 'C' FROM recurring WHERE day = DATE_FORMAT(CURRENT_DATE(), '%e')

来源:MySQL Reference

答案 1 :(得分:0)

在引号中添加%e。任何格式必须以单引号提供。因此,将%e更改为'%e'