我正在尝试创建一个事件,每天下午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”附近使用正确的语法
任何人都可以看到错误并向我解释我错过了什么吗?
答案 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')
答案 1 :(得分:0)
在引号中添加%e。任何格式必须以单引号提供。因此,将%e更改为'%e'