【发布时间】:2017-07-19 02:36:13
【问题描述】:
我有一个“任务”表,其中包含任务 ID(主键、自动增量)、任务状态(完成/未完成/过期)和到期日期(日期时间)。
有没有办法根据当前日期时间更新 MySQL 中的任务状态列?例如,自动更改任务状态以设置为过期日期 > 当前时间后过期。
谢谢!
【问题讨论】:
我有一个“任务”表,其中包含任务 ID(主键、自动增量)、任务状态(完成/未完成/过期)和到期日期(日期时间)。
有没有办法根据当前日期时间更新 MySQL 中的任务状态列?例如,自动更改任务状态以设置为过期日期 > 当前时间后过期。
谢谢!
【问题讨论】:
您可以使用MySQL EVENT Scheduler 设置重复事件,如果您的条件通过,则将所有任务更新为过期。
CREATE EVENT myevent
ON SCHEDULE EVERY 1 MINUTE
DO
UPDATE myschema.task SET status = 'expired' WHERE expiry_date > NOW();
有关详细信息,请参阅文档。请记住,您必须enable the event scheduler 才能运行它。
【讨论】: