Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/381.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我想用Java代码插入到Oracle表中,但PreparedStatement出现错误_Java_Sql_Oracle - Fatal编程技术网

我想用Java代码插入到Oracle表中,但PreparedStatement出现错误

我想用Java代码插入到Oracle表中,但PreparedStatement出现错误,java,sql,oracle,Java,Sql,Oracle,我想在表中插入一行,但我正在执行PreparedStatement,并不断出现以下错误: java.sql.SQLException:列索引无效 代码如下: 这份事先准备好的声明有什么不对 String sql = "INSERT INTO ASIST_EMAIL (NUME, CNPCUI, LOCALITATEA, STRADA, NUMAR, BLOC, SCARA, APARTAMENT, JUDET, EMAIL, TEXTINTREBARE, CATEGCONTRIB, SECVEN

我想在表中插入一行,但我正在执行PreparedStatement,并不断出现以下错误:

java.sql.SQLException:列索引无效

代码如下:

这份事先准备好的声明有什么不对

String sql = "INSERT INTO ASIST_EMAIL (NUME, CNPCUI, LOCALITATEA, STRADA, NUMAR, BLOC, SCARA, APARTAMENT, JUDET, EMAIL, TEXTINTREBARE, CATEGCONTRIB, SECVENTA, DATA_EMAIL, CATEGSOLICIT, NUMEFISIER, ARONDARE, DOMFISCAL, SUBCATEGSOLICIT, TIPINTRARE, STARE, CODCATEG, CODSUBCATEG, HOST, AJCODSOC, AJCAEN, AJPERSCONTACT, DENREG) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
PreparedStatement ps = conn.prepareStatement(sql);
       ps.setString(0, "test");
       ps.setInt(1, 999);
       ps.setString(2, "xxx");
       ps.setString(3, "xxx");
       ps.setString(4, "xxx");
       ps.setString(5, "xxx");
       ps.setString(6, "xxx");
       ps.setString(7, "xxx");
       ps.setString(8, "xxx");
       ps.setString(9, "xxx");
       ps.setString(10, "xxx");
       ps.setString(11, "xxx");
       ps.setInt(12, 999);
       ps.setTimestamp(13, new java.sql.Timestamp(System.currentTimeMillis()));
       ps.setString(14, "xxx");
       ps.setString(15, "xxx");
       ps.setString(16, "xxx");
       ps.setString(17, "xxx");
       ps.setString(18, "xxx");
       ps.setInt(19, 99);
       ps.setInt(20, 9);
       ps.setInt(21, 999);
       ps.setInt(22, 999);
       ps.setString(23, "xxx");
       ps.setInt(24, 9);
       ps.setInt(25, 9999);
       ps.setString(26, "xxx");
       ps.setString(27, "xxx");
       ps.executeUpdate();

您在setters中有一个错误的索引,来自:

parameterIndex-第一个参数为1,第二个参数为2


还有——这么大的请求很难理解。

步骤1)尽可能简化。()ps.setXXX方法的第一个索引应该是
1