我的源数据库中有一个Timestamp
列,它在我的java程序中被读作String
。
String dateWithNano = "2011-10-02 18:48:05.123456";
我必须在目标数据库列中设置相同的Timestamp
。
我正在做同样的事情:
java.text.DateFormat format1 = new java.text.SimpleDateFormat("yyyy-MM-dd hh:mm:ss.SSSSSS");
if(dateWithNano== null || dateWithNano.equalsIgnoreCase("")){
ps.setTimestamp(1,null);
}else{
java.util.Date parsedDate = format1.parse(item.getUPDATED_TS());
ps.setTimestamp(1, new java.sql.Timestamp(parsedDate.getTime()));
}
但目标数据库中的nanosecond
值正在受到损害。它与2011-10-02 18:48:05.123456
这样做的正确方法是什么,以便在源和目标数据库中保持相同的纳秒值?