JDBC ResultSet getDate丢失精度 [英] JDBC ResultSet getDate losing precision

查看:445
本文介绍了JDBC ResultSet getDate丢失精度的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在我的ResultSet.getDate(x)调用中失去了精度。基本上:

  rs = ps.executeQuery(); 
rs.getDate(MODIFIED);

将截断的日期截断为MODIFIED是默认精度的Oracle TIMESTAMP字段。我认为可能有一些JDBC调整我失踪了;通常TIMESTAMP与DATE兼容,但我希望我不必重新定义整个表。

解决方案

ResultSet.getDate( ) 返回一个 java。 sql .Date ,而不是 java。 util .Date 。它被定义为一个永恒的日期。
如果您想要一个时间戳,请使用 ResultSet.getTimestamp()


I am losing precision in my ResultSet.getDate(x) calls. Basically:

rs = ps.executeQuery();
rs.getDate("MODIFIED");

is returning dates truncated to the day where MODIFIED is an Oracle TIMESTAMP field of default precision. I think there may be some JDBC tweak I'm missing; usually TIMESTAMP is compatible with DATE, but I'm hoping I don't have to redefine the entire table.

解决方案

ResultSet.getDate() returns a java.sql.Date, not a java.util.Date. It is defined to be a timeless date. If you want a timestamp, use ResultSet.getTimestamp()!

这篇关于JDBC ResultSet getDate丢失精度的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆