【问题标题】:MySQL - Change a row value using a timerMySQL - 使用计时器更改行值
【发布时间】:2014-12-29 19:20:48
【问题描述】:

我一直在开发带有临时禁止系统的禁止系统,我正在寻找是否可以使用 MySQL 中的计时器将行更新为特定值。例如,

我需要将我的字段 banned 设置为 0,其中 rowid 是 X。

UPDATE mytable SET banned=0 WHERE rowid=X

- 但是这个查询必须在指定的 X 分钟或秒内完成,就像我们可以延迟它一样。

  • 暂时禁止用户 60 秒,当时发送查询:

"UPDATE mytable SET banned=1, unbanon=NOW()+60 WHERE rowid=X".

我可以让 MySQL 在 60 秒后自动将 banned 变量设置为 0 吗?

谢谢。

【问题讨论】:

    标签: mysql


    【解决方案1】:

    设置一个 cron 作业以每分钟运行一次查询,该查询将执行以下操作:

    UPDATE mytable SET banned=0 WHERE unbanon <= NOW() AND banned=1
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-14
    • 2021-07-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多