如何在插入语句中插入带有区域时间的TimeStamp ...
我把它作为字符串2011-03-22T13:33:54+0530
使用以下将其转换为时间并插入
String timStp = 2011-03-22T13:33:54+0530
java.sql.Timestamp tsmp = new java.sql.Timestamp(sdf.parse(timStp).getTime());
java.sql.Timestamp tsmp11 = new java.sql.Timestamp(sdf.parse(timStp).getTimezoneOffset());
INSERT INTO PUNCHOUT_USER_LOGIN(REQ_TIME) VALUES(TIMESTAMP '"+tsmp+"');
已插入以上查询: - > 22-MAR-11 01.12.44.000000000 PM
(没有时区)
答案 0 :(得分:1)
请勿将Timestamp
转换为String
。将其插入Timestamp
。您可以使用PreparedStatement#setTimestamp()
。
String sql = "INSERT INTO PUNCHOUT_USER_LOGIN(REQ_TIME) VALUES(?)";
// ...
try {
// ...
preparedStatement = connection.prepareStatement(sql);
preparedStatement.setTimestamp(1, timestamp);
// ...
} finally {
// ...
}