mysql自动更新事件

mysql 自动更新事件 表:customer_tank 字段:gasoline 需求是每8个小时更新gasoline字段自增1 不能超过3
事件应该怎么写.

img


CREATE EVENT update_gasoline_event
ON SCHEDULE EVERY 8 HOUR
DO
BEGIN
    UPDATE customer_tank
    SET gasoline = CASE
        WHEN gasoline + 1 <= 3 THEN gasoline + 1
        ELSE 3
    END;
END;

调度器:

SHOW VARIABLES LIKE 'event_scheduler';
SET GLOBAL event_scheduler = ON;

创建个定时任务,每八小时执行一次,大致这意思,可以参考下

CREATE EVENT IF NOT EXISTS update_gasoline_event
ON SCHEDULE EVERY 8 HOUR
DO
BEGIN
    UPDATE customer_tank
    SET gasoline = LEAST(gasoline + 1, 3);
END;



CREATE EVENT update_gasoline
    ON SCHEDULE EVERY 8 HOUR
    STARTS CURRENT_TIMESTAMP
    DO
      UPDATE customer_tank
      SET gasoline = LEAST(gasoline + 1, 3)
      WHERE gasoline < 3;

你要的是这样吗?