我已经创建了mysql来删除表行,这些行的DATETIME值低于NOW(),SHOW PROCESSLIST
显示事件和时间计数器正在运行,但它不删除行。这是代码:
CREATE EVENT minute_event
ON SCHEDULE EVERY 1 minute
DO
DELETE FROM reservations WHERE 'reservation_end' < NOW();
最佳答案
您使用的是单引号而不是反引号。表达式'reservation_end' < NOW()
应该会导致 MySQL Error #1267 ,因为'reservation_end'
只是一个字符串。应该是:
DELETE FROM reservations WHERE `reservation_end` < NOW();
或自 reservation_end
起不加引号不需要特别用反引号括起来。
关于php - MYSQL 事件正在运行但不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11106772/