【发布时间】:2014-06-14 02:00:13
【问题描述】:
我的一个数据库列的类型是时间戳格式(yyyy-MM-dd HH:mm:ss),但其中保存的数据是 2014-06-13 00:00:00。所以时间分量不会保存到数据库表中。
我正在尝试向该表中插入数据,但无法从我的数据中删除时间部分。
这是我正在做的事情:
long time = System.currentTimeMillis();
java.sql.Timestamp timestamp = new java.sql.Timestamp(time);
所以时间(长)= 1402710418003 和时间戳=2014-06-13 21:46:58.003
有没有办法可以从时间戳中删除时间部分? 例如:2014-06-13 或者 例如:2014-06-13 00:00:00
这是我准备好的声明:
java.util.Date currentDate= new java.util.Date();
sql_statement4.setTimestamp(6,new Timestamp(currentDate.getTime()));
sql_statement4 是一个 PreparedStatement 对象。
我希望该值采用时间戳格式。
我该怎么做?
【问题讨论】:
-
不会被db调用删除吗?
-
使用 PreparedStatement.setDate 代替 setTimestamp
-
@SotiriosDelimanolis DB 调用是什么意思?我正在插入数据。不,时间组件也被插入。
-
@BrettOkken 目前这就是我所做的。 sql_statement4.setTimestamp(6,new Timestamp(currentDate.getTime()));