MySQL 将 current_timestamp 与事件调度程序一起使用时 AT 值不正确

MySQL Incorrect AT value using current_timestamp with event scheduler

我正在尝试使用 current_timestamp 使用 MySQL 调度程序配置一次性事件。

查询的是下面一个(第二个数字可能不同)

CREATE EVENT event_name ON SCHEDULE AT CURRENT_TIMESTAMP + 30
DO UPDATE test_table SET value = 0 WHERE id = 1;

它有时有效,但我经常遇到以下错误。

 #1525 - Incorrect AT value: '20211031204269'

问题似乎出在秒数直接添加到 current_timestamp 上,因此在本例中秒数为“68”

有没有办法 MySQL 使用 CURRENT_TIMESTAMP [+ seconds] 符号正确创建时间戳(当秒数大于 60 时增加分钟数,分钟、小时、天数相同...)或我必须自己生成时间戳吗?

三十到底是什么,

您需要指定要添加时间戳的间隔

interval: quantity {YEAR | QUARTER | MONTH | DAY | HOUR | MINUTE | WEEK | SECOND | YEAR_MONTH | DAY_HOUR | DAY_MINUTE | DAY_SECOND | HOUR_MINUTE | HOUR_SECOND | MINUTE_SECOND}

manual

CREATE EVENT event_name ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 30 MINUTE 
DO UPDATE test_table SET value = 0 WHERE id = 1;