我正在尝试将当前日期插入Oracle sql.I已将数据类型设置为oracle sql中的DATE并将日期格式更改为DD-MM-YYYY。现在我尝试插入当前日期,如下所示。但是我我收到了一些错误,如下所示。不知道出了什么问题
String sql6 = "insert into account(acc_no,acc_type,primary_phone_number,people_in_plan,acc_activated_date,acc_deactivated_date) values('"+n1+"','"+acctype+"','"+primaryphoneno+"','"+number_of_people+"',?,?)";
Stmt = connection.prepareStatement(sql6);
SimpleDateFormat sdf=new SimpleDateFormat("DD-MM-YYYY");
Date date1 = new Date(System.currentTimeMillis());
Stmt.setString(5, sdf.format(date1));
Stmt.setNull(6, java.sql.Types.DATE);
Stmt.executeUpdate();
java.sql.SQLException:列索引无效 at oracle.jdbc.driver.OraclePreparedStatement.setStringInternal(OraclePreparedStatement.java:5386) at oracle.jdbc.driver.OraclePreparedStatement.setString(OraclePreparedStatement.java:5374) 在oracle.jdbc.driver.OraclePreparedStatementWrapper.setString(OraclePreparedStatementWrapper.java:282)
答案 0 :(得分:0)
请用户statement.setObject(1, new java.sql.Date());
代替
答案 1 :(得分:0)
您的列索引看起来不正确。它们应分别为1和2。
Stmt.setString(1, sdf.format(date1));
Stmt.setNull(2, java.sql.Types.DATE);