ORA-01810: 格式代码出现两次,ORA-01849: 小时值必须介于 1 和 12 之间
String sql = "update sfsjdatatime set lasttime = to_date('"
+ new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(date)
+ "','yyyy-MM-dd HH:mm:ss') where datatype='" + dataType + "'";
这里to_date两个参数,第一个时间参数,第二个时间格式,问题就出现在时间格式上,oracle不区分大小写,这里mm就不正确,需要改为mi。
改完之后又出现一个问题:
ORA-01849: 小时值必须介于 1 和 12 之间
原因:在oracle中时间格式默认小时为12小时制,将HH改为HH24,最终的代码;
String sql = "update sfsjdatatime set lasttime = to_date('"
+ new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(date)
+ "','yyyy-MM-dd HH24:mi:ss') where datatype='" + dataType + "'";