时间戳类型的MySQL数据插入问题

时间:2019-01-08 06:33:33

标签: mysql

我们正在使用DBeaver尝试执行以下查询。

  UPDATE listing SET ScheduledTime='2019-01-09 15:14:51.0', Status='SCHEDULED' where ID=108 

成功执行后,我们可以在DB中看到ScheduledTime列为“ 2019-01-09 20:44:51”。为什么时间不匹配,我们该如何解决?非常感谢在此问题上提供的帮助。

1 个答案:

答案 0 :(得分:0)

在存储和查看数据时,您使用不同的时区设置。正如timestamp上的mysql文档所说:

  

MySQL将TIMESTAMP值从当前时区转换为UTC进行存储,然后从UTC返回当前时区进行检索。 (对于其他类型,例如DATETIME,不会发生这种情况。)默认情况下,每个连接的当前时区是服务器的时间。可以在每个连接的基础上设置时区。

Mysql文档介绍了如何查看和设置时区here