【问题标题】:How can I update MySQL table value on Future Date?如何在未来日期更新 MySQL 表值?
【发布时间】:2017-07-03 15:59:13
【问题描述】:

我只是在寻找一些关于这个的总体方向。基本上,我将日期设置为 mysql 数据库的参数之一。日期设置为从设置值开始的未来日期。当到达未来日期时,我想更新某个表值。我该怎么做?

另外,作为一个相关问题,如何设置脚本来检查日期并自动更新表格?我可以使用 PHP 脚本还是必须设置一些复杂的 cron 作业才能每天运行?

【问题讨论】:

  • cron 作业将是最有效的。否则,您将运行 PHP 脚本,查询日期,查看是否到达,如果到达,则运行查询。

标签: php mysql date


【解决方案1】:

您用第二个问题回答了第一个问题。您使用一个脚本来检查日期并更新表格。

是的,您需要使用 cron,但它不需要很复杂。 Cron 可以运行 php 脚本(在 cli 模式下)。您也可以让 cron 启动 curlwget 并让他们直接在网络服务器上运行 php。

好吧,实际上您还有一个选择 - 每次在您的网站上执行某种操作(您需要决定哪种操作最合适)时,它也运行更新命令。

【讨论】:

    【解决方案2】:

    当到达未来日期时,我想更新某个表值

    为什么不直接编写代码来根据日期选择适当的值,例如

     SELECT IF(activation_date<NOW(), old_value, new_value) AS value
     FROM yourTable
     WHERE...
    

    【讨论】:

      【解决方案3】:

      对于这两种情况,您都需要设置一个 cron 作业(虽然不一定很复杂)。根据应用程序,您可以决定在提出某种请求时进行更新。例如,假设未来数据是奖金金额的有效性,并且每当特定用户登录时,如果到达日期,您将进行检查并使奖金金额无效。如果确实有必要立即进行更改,那么 cron 作业是不错的选择。

      这完全取决于应用程序及其范围。

      【讨论】:

        猜你喜欢
        • 2013-12-20
        • 2013-01-28
        • 1970-01-01
        • 1970-01-01
        • 2023-03-24
        • 2019-02-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多