MySQL-PHP - 每天更新列值

时间:2014-05-11 23:40:07

标签: php mysql

我有一个名为' periodo'使用INTEGER值表示实现某些工作所需的时间。 所以我需要将1减少到列'' periodo'每天所以通知将是ie。 "你剩下4天",第二天"你剩下3天"等等。 我知道这可以通过MySQL中的事件完成,但问题是如果MySQL服务器停机2天,例如在周末,该字段将不会更新,并且当它再次打开时,该事件将不存在(这就是我的想法,我对事件几乎没有经验) -

所以我想出了这个,我有另一个专栏,其中包含该作品开头的日期(fecha_entrega),以及' periodo'我每次以这种方式加载index.php页面时都可以使用DATEDIFF():

UPDATE compromisos SET periodo = periodo - SELECT DATEDIFF('CURDATE()','fecha_entrega');

但我认为这是一种奇怪而低效的方式来做我想做的事。

帮助我选择最有效的方式来做我想要的事情,而服务器有时可能会失败!

2 个答案:

答案 0 :(得分:1)

如何将结束日期存储在mysql中,并将其存储在memcached中一段时间​​,作为mysql服务器关闭时的备份,因为您将无法查询数据库。然后当然计算剩余时间。

答案 1 :(得分:0)

存储截止日期,而不是存储工作的开始日期和剩余时间/天。然后,您可以始终计算剩余时间来完成工作(或者它已经过期)。