数据库已经连接上 
简单的存储过程我会调用,但不知道怎么调用下面这个存储过程,它的声明如下:
create or replace package equipment isprocedure query(
    a_start date,
    a_end date,
    a_item_no pkg_common.t_string_array,
    a_serial_no pkg_common.t_string_array,
    a_airplane_no pkg_common.t_string_array,
    a_engine_no pkg_common.t_string_array,
    a_apu_no pkg_common.t_string_array,
    a_data out pkg_common.t_cursor
  );
    
 end equipment;
/
pkg_common包的声明如下:
create or replace package pkg_common is  type t_string_array is table of varchar2(4000) index by binary_integer;
 type t_cursor is ref cursor;
 
end pkg_maximo_common;
/
请能手帮忙写段调用这个存储过程的代码
在此多谢了

解决方案 »

  1.   


          CallableStatement proc = null;      proc = conn.prepareCall("{ call 模式.过程名(?,?,?,?,?,?,?,?) }");      proc.registerOutParameter(8,oracle.jdbc.OracleTypes.CURSOR);      proc.execute();      rs = (ResultSet)proc.getObject(8); 
      

  2.   

    不存在oracle.jdbc.OracleTypes.CURSOR类型啊
    怎么回事??
      

  3.   

    Oracle的这个包:classes12.jar引进来了没有?
      

  4.   

    第3--7个参数类型都是
    type   t_string_array   is   table   of   varchar2(4000)   index   by   binary_integer; 这个类型 在输入参数的时候 我把第三个参数设置成 cstmt.setString(3, "MXP147-2");第4--7个雷同
    但是报错  说存储过程query出错 
    存储过程query是肯定没问题的 我想应该是参数类型有问题 大家帮我看看啊