[英]How can I update my table after X minutes?
行動X分鍾后如何更新表格
我發送此請求:
$req = Query("UPDATE clients SET lockclient = 0 WHERE id = $id")
我想在5分鍾后創建活動。
UPDATE clients SET lockclient = 1 WHERE id = $id
我試圖用存儲過程創建事件,但這是不可能的
DELIMITER $$
CREATE PROCEDURE proc
(
idClient INTEGER
)
BEGIN
CREATE EVENT updateClientLock
ON SCHEDULE
AT NOW() + INTERVAL 5 MINUTE
ON COMPLETION NOT PRESERVE
ENABLE
DO BEGIN
UPDATE client set lockclient = 0 where id = idClient ;
END
END$$
DELIMITER ;
還有另一種方法嗎?
通過使用X分鍾的cron作業文件,您可以執行此操作,它將在您指定的時間后自動調用它
問題的解決方案:
static public function eventUpdateLockClient($id, $min)
{
$bdd = new mysqli ($DB_HOST, $DB_USER, $DB_PASS, $DB_NAME);
$sql1 = "CREATE EVENT updateClientLock$id
ON SCHEDULE
AT NOW() + INTERVAL $min MINUTE
ON COMPLETION NOT PRESERVE
ENABLE
DO BEGIN
UPDATE clients set lockclient = 0 where id = $id ;
END";
$bdd->query(${"sql1"});
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.