存储过程:
CREATE OR REPLACE  PROCEDURE "WL"."TEST" ( 
pRecCur out TestPackage.TestResultSet
)
is
begin
open pRecCur for select comno from commodity; 
end;
经过测试没问题
下面是java调用代码
public class ConDBExample {
   public static void main(String[] args){
   try{
   Class.forName("oracle.jdbc.driver.OracleDriver");
   Connection c=DriverManager.getConnection("jdbc:oracle:thin:@172.16.21.223:1521:ora64","wl","123");
   CallableStatement stmt = c.prepareCall("{call test() }");  
                      ResultSet rs= stmt.executeQuery();
   }
   catch(Exception e){
   System.out.println(e);
   }
   }
}报错:
java.sql.SQLException: ORA-06550: 第 1 行, 第 7 列: 
PLS-00306: 调用 'TEST' 时参数个数或类型错误
ORA-06550: 第 1 行, 第 7 列: 
PL/SQL: Statement ignored怎么解决啊

解决方案 »

  1.   

      问你一下...  学好JAVA后可以找工作吗???
      

  2.   

    问你一下...  学好JAVA后可以找工作吗???
    -----------------------------------------
    哈哈,只能回答:可以
      

  3.   

    改这一句:
    CallableStatement stmt = c.prepareCall("{call test() }");  
    为:
    CallableStatement stmt = c.prepareCall("{call test(?) }");  
    加这一句:
    stmt .registerOutParameter(1, 你的out参数的类型,如Types.STRING,Types.INTEGER等);
      

  4.   

    存储过程没问题啊  我用plsql侧过 可以的