【发布时间】:2014-07-29 06:28:36
【问题描述】:
我正在尝试将 excel 文件中的记录插入数据库表中。 excel 文件包含时间戳为“05/10/13 03:47 PM IST”。我想将数据库中的时间戳保存为日期时间,以便稍后我可以触发对日期时间约束的查询。在java中我使用准备好的语句。我在表中使用 datetime2(7) 数据类型。
timeStampt 的值 = 05/10/13 03:47 PM IST
private void insertToDb(String vh, String timeStamp, String location, double tempReal, double tempFixed) throws ParseException{
conn = DbHandler.getConnection();
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yy hh:mm a");
java.util.Date utilDate = sdf.parse(timeStamp);
java.sql.Date sqlDate = new java.sql.Date(utilDate.getTime());
String query = "INSERT INTO [DATALOGGER_TEMP_REPORT](vehicle_no,time_stamp,location,temp_real,temp_fixed)values(?,?,?,?,?)";
try {
pstmt= conn.prepareStatement(query);
pstmt.setString(1,vh);
pstmt.setDate(2, sqlDate);//(2, date);
pstmt.setString(3, location );
pstmt.setDouble(4, tempReal);
pstmt.setDouble(5, tempFixed);
pstmt.executeUpdate(); // execute insert statement
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
目前,数据库表中的时间戳值存储为 = 2013-10-05 00:00:00.0000000
相反,我希望我的表将时间戳存储为 05/10/13 03:47 PM IST
【问题讨论】:
标签: java sql sql-server-2008 jdbc