在数据库中超过1小时

时间:2013-04-20 10:49:12

标签: mysql time unix-timestamp

我刚从前一位开发人员手中接管了新系统的开发,说实话,这是一团糟。

所有日记项目提前1小时,保存的格式为135538​​5600.负责时间的字段为start_time和end_time。

我需要一种方法来批量更新数据库中的所有条目,并从中删除一小时。

你们对我如何做到这一点有什么想法吗?

干杯

注意:我应该提到默认时区已正确设置为'Europe / London',当您添加新日记条目时,时间是正确的。我需要做的是找到一种方法来批量更新数据库中的所有当前条目,然后返回1小时。这可能吗?

2 个答案:

答案 0 :(得分:0)

您需要设置时区。

对于我的网站,我使用date_default_timezone_set('Europe/Berlin')设置时区,当我在数据库中插入日期时间时,我使用date('Y/m/d H:i:s')

对于你的,而不是date('Y/m/d H:i:s'),它应该是strtotime(date('Y/m/d H:i:s'))

答案 1 :(得分:0)

只需更新字段并添加一小时

UPDATE
    yourtable
SET
    start_time = start_time - 3600,
    end_time = end_time - 3600
WHERE
    start_time <= max time prior timezone fix

编辑:当然是指子