MySQL 中的日期/时间如何与时区一起运作?

MySQL 中的日期/时间如何与时区一起运作?

我的理解是:

  • 内部一切都是 UTC
  • 日期显示在当前会话的 @@session.time_zone 时区中
  • 如果我INSERT使用+02:00TZ 设置并插入,2015-05-15 10:54它将被解析并存储为2015-05-15 08:54UTC。
  • 当我更改为UTCTZ 时它现在应该显示2015-05-15 08:54
  • 实际情况是它仍然显示2015-05-15 10:54

我做错了什么?或者这是预料之中的?我读了很多关于 MySQL 中日期时间的文章,但我仍然不确定。

答案1

这仅适用于TIMESTAMP字段。DATETIME字段保持原样。

http://dev.mysql.com/doc/refman/5.7/en/datetime.html

相关内容