您可以使用 MySQL 的触发器(Trigger)来实现这个需求。下面是一个示例的触发器定义:

CREATE TRIGGER update_status_trigger
AFTER UPDATE ON your_table
FOR EACH ROW
BEGIN
    IF NEW.status = 1 AND DATE(NOW()) <> DATE(NEW.updated_at) THEN
        UPDATE your_table SET status = 0 WHERE id = NEW.id;
    END IF;
END;

上述触发器假设您的表名为 your_table,状态字段名为 status,更新时间字段名为 updated_at,主键字段名为 id。当有行被更新时,触发器会检查状态字段是否为1,并且当前日期不等于更新日期(即已经过了一天),如果满足条件则将状态字段更新为0。

请根据您的实际表名和字段名进行相应修改,然后将触发器定义语句执行在 MySQL 中即可。

MySQL 触发器:将状态字段在第二天凌晨自动重置为 0

原文地址: https://www.cveoy.top/t/topic/p2zk 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录