【发布时间】:2013-05-08 12:21:35
【问题描述】:
我的表中有一个类型为 datetime 的列,我正在使用 jdbc 将该列检索到我的 java 应用程序。
我的问题是当我将2014-05-13 23:49:18.150 存储在我的数据库中时,它在我的java 应用程序中变成了2014-04-13。
如何获取包括时间在内的所有日期(房屋、秒、分钟)。
java代码
callableStatement = con
.prepareCall("{call getStatusForOrder(?,?,?,?,?)}");
callableStatement.setInt(1, order.getID());
callableStatement.registerOutParameter(2, java.sql.Types.INTEGER);
callableStatement.registerOutParameter(3, java.sql.Types.DATE);
callableStatement.registerOutParameter(4, java.sql.Types.DATE);
callableStatement.registerOutParameter(5, java.sql.Types.BIT);
callableStatement.execute();
int statusID = callableStatement.getInt(2);
Date startTime = callableStatement.getDate(3);
Date endTime = callableStatement.getDate(4);
boolean isActive = callableStatement.getBoolean(5);
System.out.println("IsActive = " + isActive);
System.out.println("Start Date = " + startTime.toString());
【问题讨论】:
-
DB 函数 getStatusForOrder 是否在做一些转换?
-
@sanbhat 不,不是
-
你的意思是肯定会变成2014-05-13?
-
@Will 什么?我没听懂你
-
@MarcoDinatsoli “我的问题是,当我将 2014-05-13 23:49:18.150 存储在我的数据库中时,它在我的 java 应用程序中变成了 2014-04-13。”错别字?
标签: java sql-server date datetime jdbc