首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >插入最大日期(独立于数据库)

插入最大日期(独立于数据库)
EN

Stack Overflow用户
提问于 2016-12-23 12:53:04
回答 1查看 1.1K关注 0票数 2

在本地设置中,我使用的是一个简单的H2数据库。“宿主”解决方案将有另一个(类似但不相同)数据库。

我需要将最大可能的日期插入到DateTime列中。我试着用

代码语言:javascript
复制
Instant.MAX

然而,这将导致列中的-169104626-12-11 20:08:15.99999999。

关于如何插入最大可能的日期,是否有可靠的选项?

EN

回答 1

Stack Overflow用户

发布于 2016-12-23 23:31:43

最大日期(独立于数据库)

没有这样的事。尝试设置最大日期完全取决于数据库。

日期时间处理的主题几乎没有被SQL标准触及(不幸的是)。日期时间的数据类型和行为在不同的数据库中差异很大.不同数据库之间的最小值和最大值可能会有根本的不同。即使在单个数据库中,各种日期-时间数据类型的最小/最大范围也可能有很大的不同。例如,一些数据库具有旧的专有日期时间类型,以及行为非常不同的更新、更常见或标准的类型。

Java本身有非常不同的日期时间类型集:

  • 麻烦的遗留类型(java.util和java.sql)
  • 现代设计明智的java.time类型。

它们的最小/最大值是不同的。

关于如何插入最大可能的日期,是否有可靠的选项?

不是的。

如果您试图使用最大值作为某种标志,例如“未定的未来日期”以避免空值,则应该选择一些任意日期,以便将来超过任何合法值,但不超过您可能使用的任何数据库的限制。在Java代码和数据库中为这个值定义一个常量,并彻底记录。

我建议坚持四位数的年份,以避免各种混乱和问题,如打破报告&GUI超过了字段的显示宽度。有点像9999。或者可能是2666,因为它对人类读者来说是如此明显,因为恶名为666

搜索堆栈溢出的单词,如Java、min和max,以获得更多讨论。比如。这个问题基本上是其他问题的重复。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41301892

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档