【问题标题】:Reset a column's value in every 24 hours每 24 小时重置一列的值
【发布时间】:2014-05-16 05:04:01
【问题描述】:

我正在使用 PHP,我希望每天上午 12 点在我的数据库中重置其中一个列的值。我怎么能那样做?任何帮助将不胜感激,谢谢!

【问题讨论】:

  • 你必须在 php see how 中安排一个 cron-job

标签: php mysql


【解决方案1】:

您要做的是制作一个执行任务的 php 脚本并将其保存为 cronjob1.php(或您选择的任何名称)

几乎所有控制面板中都有一个 cron 作业模块。 您只需单击它,输入有关作业执行时间的字段。

并在要执行的命令字段中键入执行 php 文件的代码。 由于我不知道您使用的是哪个控制面板,您可以在控制面板支持部分询问有关“使用 cron 作业模块”的问题。

希望这会有所帮助!

【讨论】:

    【解决方案2】:

    有几种方法可以做到这一点,

    一种是调度事件@数据库级别-MySql

    引用自参考文献

    启用事件调度器

    SET GLOBAL event_scheduler = ON;
    

    并像这样创建一个事件:

    CREATE EVENT 
    ON SCHEDULE EVERY 1 DAY
    STARTS '2014-01-18 00:00:00'
    DO
    <Your SQL query here>;
    

    就是这样。

    在此处阅读有关语法的更多信息,此处是有关它的更多一般信息。 reference

    另一种是创建@服务器级别的事件

    然后您可以将以下内容添加到您的 cron 作业中

    mysql --user=[username] --password=[password] --database=[db name] --execute="<Your Query Here>"
    

    reference from SO

    【讨论】:

      【解决方案3】:

      您可以通过多种方式做到这一点。

      最简单的方法是创建一个 bash 脚本并使用 crond 安排一个作业。

      如果您使用的是基于 Unix 的系统,您可以使用更新命令创建一个简单的 bash 脚本。

      #!/bin/bash
      
      mysql -h <server> -u <user> -p<password> [database_name] -e "UPDATE table SET column = 'value'";
      

      在 Windows 上,您可以使用完全相同的命令创建批处理脚本并添加到管理工具中的“任务计划程序”中。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-10-11
        • 1970-01-01
        • 2020-05-07
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多