我有以下列值,我正在转换并存储在另一列中
Nov 22 2014 00:00:00 AM
现在我使用以下查询将其转换为日期格式并存储在另一列中
UPDATE DataNov2014 SET Datee = str_to_date(Date,'%d %b %Y %H:%i:%s');
但我得到以下例外
线程中的异常" main" java.sql.SQLException:日期时间不正确 价值:' 2014年11月22日00:00:00 AM'对于函数str_to_date
我的查询/日期格式有错吗?
任何帮助将不胜感激,谢谢
答案 0 :(得分:0)
tyr this
UPDATE DataNov2014 SET Date= to_char(Date,'mon dd yyyy mm:ss:hh');
答案 1 :(得分:0)
我建议您使用PreparedStatement
和Date
绑定参数。此外,您可以使用try-with-resources
。把它们放在一起,比如
String sql = "UPDATE DataNov2014 SET Datee = ?";
DateFormat sdf = new SimpleDateFormat("MM-dd-yyyy HH:mm:ss");
try (PreparedStatement ps = conn.prepareStatement(sql)) {
Date theDate = sdf.parse("11-22-2014 00:00:00");
ps.setDate(1, new java.sql.Date(theDate.getTime()));
int count = ps.executeUpdate();
if (count > 0) {
System.out.printf("Query updated %d rows.%n", count);
} else {
System.out.println("Query didn't update any rows");
}
} catch (Exception e) {
e.printStackTrace();
}
答案 2 :(得分:0)
假设您的字段Datee
数据类型为Datetime
UPDATE DataNov2014 SET Date = str_to_date('2014年11月22日00:00:00 AM','%M%d%Y%H:%i:%s');