【问题标题】:Update timestamps in MySQL Database after changing server's timezone更改服务器时区后更新 MySQL 数据库中的时间戳
【发布时间】:2014-07-06 15:32:18
【问题描述】:

现在我在服务器上设置了错误的时区,所以我的 MySQL 数据库中的所有记录的时间戳都与实际的时间戳相差 4 小时。如何更新所有时间戳以匹配实时?

例如,我有像2014-06-28 20:34:29 这样的时间戳。我需要它变成2014-06-29 00:34:29

任何帮助将不胜感激。

【问题讨论】:

  • ..SET datecol=datecol+INTERVAL 4 HOUR 或者您可能需要更改时区以使其不清楚。您要正确显示它们还是更新表格?
  • 不要更新您的数据。将时区设置为正确的值,因为 “MySQL 将 TIMESTAMP 值从当前时区转换为 UTC 进行存储,并从 UTC 转换回当前时区进行检索。” (dev.mysql.com/doc/refman/5.6/en/datetime.html)
  • @VMai 谢谢你,我会试试你的建议

标签: php mysql sql datetime timestamp


【解决方案1】:

假设您的日期字段名为 created_at

update <table> SET created_at = DATE_ADD(created_at,INTERVAL 4 HOUR)

【讨论】:

    猜你喜欢
    • 2014-04-19
    • 1970-01-01
    • 2021-04-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-26
    • 2018-04-12
    相关资源
    最近更新 更多