主要是对数据库进行了一个事件的设置,要求每隔一段时间进行数据库中表的更新
CREATE EVENT update_order_status
ON SCHEDULE EVERY 2 HOUR
DO
UPDATE orderitems
SET ostatus =
CASE
WHEN ostatus = 1 AND STR_TO_DATE(usingtime, '%Y-%m-%d %H:%i-%H:%i') < NOW() THEN 5
WHEN ostatus = 2 AND STR_TO_DATE(usingtime, '%Y-%m-%d %H:%i-%H:%i') < NOW() THEN 6
WHEN ostatus = 3 AND STR_TO_DATE(usingtime, '%Y-%m-%d %H:%i-%H:%i') < NOW() THEN 7
ELSE ostatus
END
WHERE STR_TO_DATE(usingtime, '%Y-%m-%d %H:%i-%H:%i') < NOW() AND ostatus != 6; -- 防止已经是6的记录再次被更新;