Java sql - 如何将TimeStamp插入到mysql数据库中,包括毫秒

时间:2016-05-16 16:12:58

标签: java mysql timestamp milliseconds

如何将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

1 个答案:

答案 0 :(得分:1)

您的数据库列datetime(3)没有毫秒的位置。您应该使用BigInteger[] sum = new BigInteger[10]; 代替。