Java sql-如何将时间戳插入mysql数据库(包括毫秒)

Java sql-如何将时间戳插入mysql数据库(包括毫秒),java,mysql,timestamp,milliseconds,Java,Mysql,Timestamp,Milliseconds,如何将Java时间戳对象转换为包含毫秒的SQL datetime类型? 当我将时间戳obj插入数据库时,毫秒就消失了 这是我将字符串转换为时间戳对象的Java源代码: import java.sql.Timestamp; ... ... String timeStr = "2013-08-30 19:11:49.113"; Timestamp timeCreated = Timestamp.valueOf(timeStr); timeCreated.toString(); //returns "

如何将Java时间戳对象转换为包含毫秒的SQL datetime类型? 当我将时间戳obj插入数据库时,毫秒就消失了

这是我将字符串转换为时间戳对象的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);
这是我将时间戳对象插入数据库的方式:

PreparedStatement psInsert;
Connection conn = ...
psInsert = conn
            .prepareStatement("INSERT INTO `Event` (EventTimeStamp) VALUES(?)");  

psInsert.setTimestamp(1, timeCreated);
psInsert.executeUpdate();
插入后,时间戳被剪切,不再有毫秒:

2013-08-30 19:11:49

Thx

您的数据库列
datetime
在毫秒内没有位置。您应该使用
datetime(3)

如何检查数据库中的值?在MySql工作台中:
SELECT*FROM Eventmysql的哪个版本?在5.6.4选择版本()中增加了小数部分;上面写着:5.5.49这就成功了!谢谢!但是我需要为这个解决方案安装最新的mysql版本@拉桑thx的建议,以更新我的mysql。