如何将Java TimeStamp对象转换为包含毫秒的SQL日期时间类型? 当我将TimeStamp obj插入数据库时,毫秒就消失了。
这是我将Java转换为Timestamp对象的Java源代码:
import java.sql.Timestamp;
...
...
String timeStr = "2013-08-30 19:11:49.113";
Timestamp timeCreated = Timestamp.valueOf(timeStr);
timeCreated.toString(); //returns "2013-08-30 19:11:49.113"
我在SQL中的表格定义:
CREATE TABLE `Event` (EventTimeStamp datetime NOT NULL);
这是我将TimeStamp对象插入数据库的方法:
PreparedStatement psInsert;
Connection conn = ...
psInsert = conn
.prepareStatement("INSERT INTO `Event` (EventTimeStamp) VALUES(?)");
psInsert.setTimestamp(1, timeCreated);
psInsert.executeUpdate();
插入后,TimeStamp被切断,不再有毫秒:
2013-08-30 19:11:49
THX
答案 0 :(得分:1)
您的数据库列datetime(3)
没有毫秒的位置。您应该使用BigInteger[] sum = new BigInteger[10];
代替。