java.sql.SQLException: ORA-00604: 递归 SQL 级别 1 发生错误 ORA-01003: 没有语句解析异常

java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1 ORA-01003: no statement parsed exception

如果有人能帮我解决这个问题,我将不胜感激:

Getting java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1 ORA-01003: no statement parsed exception

我尝试从 toad 执行存储过程,它给了我正确的异常 table or view does not exists,但是当它从 Java 执行存储过程时,我遇到了这个问题。谁能告诉我这是 Java 问题吗?

我正在调用的存储过程需要输入参数。无法共享存储过程。

ORA-01003 错误表明您没有通过 JDBC 传递可解析的语句供 Oracle 处理。请检查您的 Java 代码是否正确调用了过程。

因为你没有透露程序的任何细节(包括参数的数量和类型),所以很难给出具体的建议;以下是如何调用过程 my_procedure 获取两个参数作为输入的示例片段。

private static final String CALL_PROCEDURE = "{ call my_procedure(?, ?) }";
...
private void callMyProcedure(Connection c) throws SQLException {
  CallableStatement cs = null;
  try {
    cs = c.prepareCall(CALL_PROCEDURE);
    cs.setString(1, "firstValue");
    cs.setString(2, "secondValue");
    cs.execute();
  } finally {
    if (cs != null) {
      cs.close();
    }
  }
}