使用jdbc的DB2 SQL异常代码440



我正试图从我的java代码中调用一个存储过程,但我得到了一个sql异常。这是我的代码片段

 CallableStatement cstmt = conn.prepareCall("{call stroredprocname(?,?,?)}");
                cstmt.setString(1, filePattern);
                cstmt.setString(2, fromDate);
                cstmt.setString(3, toDate);
                ResultSet resultSet = cstmt.executeQuery();

这是我得到的错误代码:

com.ibm.db2.jcc.c.SqlException: DB2 SQL error: SQLCODE: -440, SQLSTATE: 42884, SQLERRMC: stroredprocname;PROCEDURE
    at com.ibm.db2.jcc.c.tf.e(tf.java:1680)
    at com.ibm.db2.jcc.c.tf.a(tf.java:1239)
    at com.ibm.db2.jcc.b.jb.h(jb.java:139)
    at com.ibm.db2.jcc.b.jb.d(jb.java:71)
    at com.ibm.db2.jcc.b.w.d(w.java:54)
    at com.ibm.db2.jcc.b.cc.i(cc.java:208)
    at com.ibm.db2.jcc.c.tf.o(tf.java:1236)
    at com.ibm.db2.jcc.c.uf.ib(uf.java:1831)
    at com.ibm.db2.jcc.c.uf.d(uf.java:2296)
    at com.ibm.db2.jcc.c.vf.Z(vf.java:159)
    at com.ibm.db2.jcc.c.vf.execute(vf.java:142)
    at MyClass(MyClass.java:102)

有人能帮帮我吗!提前感谢!

错误定义440-找不到存储过程的位置,这意味着您错过了案例中的模式名称。

请在过程名称之前添加架构名称,例如:

CallableStatement cstmt = conn.prepareCall("{call schemaname.stroredprocname(?,?,?)}");

第二个问题错误313-PL/SQL查询和Java代码之间的参数不匹配。

相关内容

最新更新