当前位置: 首页 > 知识库问答 >
问题:

SQL时间戳格式在windows和ubuntu上是不同的

寇坚成
2023-03-14

我在mysql中有一个db,其中一列是timmark数据类型。它在windows和linux上都以这种格式存储时间戳yyyyy-mm-dd hh-mm-ss。但是当我从我的java代码中从mysql获取数据时,它会在我的windows上以这种格式11, 2018, 11:35:34AM和在linux上以这种格式11, 2018 11:35:34AMUbuntu.

如何使时间戳格式一致?

共有1个答案

田成化
2023-03-14

这是由JDK9中的行为变化引起的,现在使用的默认格式是Unicode CLDR的格式,如下所述:

https://docs.oracle.com/javase/9/intl/internationalization-enhancements-jdk-9.htm#JSINT-GUID-9DCDB41C-A989-4220-8140-DBFB844A0FCA

本文解释了一种改变这种行为的方法,即重写java。场所提供者属性。

我更喜欢的解决方案(虽然更详细,但它也允许更大的灵活性)是始终为日期时间值使用显式格式化程序。看这里

 类似资料:
  • 问题内容: 我可能错过了我应该适应的明显平台差异,但是在尝试创建时间格式(Python2.7)时却遇到了这个问题。 在Linux环境中: 在Windows中: 从time.gmtime()返回的元组看起来是相同的,所以我不确定要更改什么。 问题答案: 通常,您会发现python支持与其运行的平台相同的格式说明符集(或更具体地讲,该平台的libc)。但是,其中只有一部分是可移植的。有关列表,请参见h

  • 问题内容: 我有一个带时间戳字段的mySQL数据库。我正在测试时,目前只有一个项目, 我从数据库中提取并使用 我的最终结果显示为 有人知道为什么吗? 编辑:editedit:忽略该编辑… notepad ++的FTP附加组件超时,很遗憾,当它无法同步时,它不会显示错误。 问题答案: 该函数希望将UNIX时间戳记作为其第二个参数- 这意味着您必须将从数据库获取的日期转换为UNIX时间戳记,可以使用以

  • VB.NET客户端以不同的方式解释Oracle11g服务器的时间戳。我用的是VS2010,VB.NET,11.2.0.30驱动程序,Win XP在客户端机器上。 这两台机器上的软件是相同的,用户在服务器上拥有相同的权限。 当我使用每个用户的凭据通过toad登录并从dual中选择SYSDATE时;我得到YYYY-MM-DD hh24:mi:ss格式。 通过我的应用程序,当我做一个选择SYSDATE从

  • 我采取的步骤: 获取Windows路径>回显%路径% 选择相关路径并转换为bash兼容(例如:\java变为/mnt/c/java) 启动bash&编辑.bashrc 追加到.bashrc中,例如>export PATH=${PATH}://bin://mnt/c/java/bin://mnt/c/node

  • 本文向大家介绍php格式化时间戳,包括了php格式化时间戳的使用技巧和注意事项,需要的朋友参考一下 CMS中一般显示时间比较新的文章需要显示几分钟前,几天前这样,但是一般数据库里面记录的都是时间戳(至少我习惯这样),所以就需要一个转化的过程,根据网上的资料加上自己的修改整理封装了两段代码 下面是封装好的方法 或者 更详细的 再分享一个类似的

  • 问题内容: 我有一个SQL查询中,我会路过,但是SQL查询需要。 如何启用此查询以根据正确的格式获取并显示正确的结果?在SQL Server 2008中实现此目标的最佳方法是什么? 这项工作正确地: 问题答案: 对于查询,我将使用格式的日期。关于输出,请参见kalyan的答案。 编辑: 总结如下(感谢marc_s)的意见,有必要使用的格式时不包括部分时间 ,除非 您使用的是新的日期类型,并在SQL