我在TIMESTAMP
类型的表格中有一列。
在我的servlet中编写代码以在此列中插入当前日期和时间,如下所示:
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = new Date();
String sendDate = dateFormat.format(date);
ps.setString(4,sendDate);
但它会抛出一个Exception
:
java.sql.SQLException: [Oracle][ODBC][Ora]ORA-01843: not a valid month
可能是什么原因?
请帮忙。
答案 0 :(得分:3)
为什么使用ps.setString
?
您应该使用ps.setDate
。
修改强>
Date dateNow = new java.sql.Date(System.CurrentTimeMillis())
ps.setDate(dateNow);
最好使用时间戳强硬:
ps.setTimestamp(1, new Timestamp(System.currentTimeMillis());