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}
CREATE EVENT event_name ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 30 MINUTE
DO UPDATE test_table SET value = 0 WHERE id = 1;
我正在尝试使用 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}
CREATE EVENT event_name ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 30 MINUTE
DO UPDATE test_table SET value = 0 WHERE id = 1;