在测试的时候发现,接口下发的时间与数据库查询的时间不一致,仔细排查开发代码发现,开发转换时间格式的代码为:

    select to_char(sysdate), 'yyyy-mm-dd hh:mm:ss') from dual;

原来是Oracle查询日期格式的数据的时候,java与oracle存在差异,
1、java中分钟是mm
2、Oracle中分钟是mi,月份是mm,所以"yyyy-mm-dd hh:mm:ss"展示的分钟都是月份,是错误的

以下展示以下二者在Oracle查询时候的巨大区别:

    select to_char(sysdate, 'yyyy-mm-dd hh24:mm:ss') from dual;
    select to_char(sysdate, 'yyyy-mm-dd hh24:mi:ss') from dual;   

查询结果,注意查询时候的月份是4月:
2021-04-22 14:04:03
2021-04-22 14:05:04

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐