【问题标题】:Is mongodb keep the System timezone as it's timezone ?mongodb 是否将系统时区保留为时区?
【发布时间】:2012-08-30 15:27:54
【问题描述】:

我正在将 Java(JOOQ) 与 mongoDB 一起使用,

mongodb 是否将系统时区保留为时区?

有没有办法设置mongoDB的默认时区?

谢谢

【问题讨论】:

  • 未来读者请注意,导致此问题的原始问题位于here

标签: java mongodb datetime


【解决方案1】:

不,mongo 不保留系统时区。在数据库中,日期以 UTC 格式存储:

BSON 日期值存储自 Unix 以来的毫秒数 纪元(1970 年 1 月 1 日)作为 64 位整数。 v2.0+ : 这个号码是签名的 因此 1970 年之前的日期存储为负数。

但大多数司机在阅读时都会将日期转换回您当地的时区。我不确定 java 驱动程序,但在 c# 中,您实际上可以说驱动程序以 utc 格式读取所有日期并在客户端代码中自己转换为适当的时区。但默认情况下,c# 驱动程序会将日期转换为计算机时区。

【讨论】:

  • 谢谢,但是 MongoDB 如何在不保留 TimeZOne 的情况下将日期转换为 UTC,要将日期转换为 UTC,我认为转换器应该知道该特定日期的时区,mongoDB 是如何知道的?它是从 JVM 中获取的吗?
  • 驱动程序执行转换客户端,而不是 mongo 数据库服务器。
猜你喜欢
  • 1970-01-01
  • 2021-12-28
  • 1970-01-01
  • 2011-12-14
  • 2022-01-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-05-11
相关资源
最近更新 更多