2017-08-03 103 views
0
Calendar cal = Calendar.getInstance(); 

PreparedStatement pstmt = conn.prepareStatement("insert into organisation (org_id,name,description,logo,created_date,created_by,is_status) values(?,?,?,?,?,?,?)"); 
pstmt.setInt(1, 1); 
pstmt.setString(2, name); 
pstmt.setString(3, description); 
pstmt.setDate(4, new java.sql.Date(cal.getTimeInMillis())); 

int count = pstmt.executeUpdate(); 
+2

使用时间戳,而不是的日期 – Jens

回答

2

参见java.sql.Datejavadoc:围绕一毫秒值,允许

薄包装纸JDBC将这个标识为SQL日期值 。

如果您看到日期类型仅表示日期而不是时间部分。 您必须使用java.sql.Timestamp。这里是javadoc

薄java.util.Date类的包装,它允许JDBC API来 标识为SQL TIMESTAMP值

所以,你的代码应该是这样的:

pstmt.setTimestamp(4, new java.sql.Timestamp(cal.getTimeInMillis())); 
相关问题