gpt4 book ai didi

php - MySQL - 在 X 分钟不活动后更改字段值

转载 作者:行者123 更新时间:2023-11-29 03:03:29 24 4
gpt4 key购买 nike

我正在尝试找到一种方法来创建一个 cronjob,它检查自上次更新一行以来已经过去了多长时间,如果它超过 X,则将字段“ACTIVE”更改为“FALSE”。

我有一个机器人可以更新其当前 IP 并添加时间戳。

从另一端来看,可能有用户愿意向机器人发送命令。我的想法是能够判断机器人在过去 X 秒内是否处于事件状态,因此尝试向它发送命令是有意义的。

所以,我猜是某种脚本检查 current_time() - field_time >= X 然后 changeValue('ACTIVE')<- False。

这可以每隔 X 秒直接在数据库上完成吗?或者也许在 PHP 中使用脚本是处理此问题的更好方法? (无限循环的脚本)

最佳答案

用 MySQL 试试 scheduling :

  DELIMITER $$
CREATE EVENT deactivation
ON SCHEDULE EVERY 10 MINUTE STARTS CURRENT_TIMESTAMP
DO
BEGIN
UPDATE tbl SET tbl.active = FALSE
WHERE tbl.active = TRUE AND
( TIME_TO_SEC( TIMEDIFF (NOW(),tbl.updated) ) / 60 ) > 10;
END;
$$;

其中 tbl.updated 是您的时间戳(由 php 生成)。由于我的测试箱无法访问 atm,我不确定这个查询是否正确,但一般来说,它应该可以完成这项工作。

关于php - MySQL - 在 X 分钟不活动后更改字段值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19477036/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com