java调用Oracle存储过程时,处理cursor类型的方法

1、取得存储过程返回的值

    CallableStatement cs = conn.prepareCall(
        "{call proc_fbquery(?,?,?)}"); //调用存储过程
    cs.setString(1,mem);
    cs.setInt(2,n);
    cs.registerOutParameter(3,oracle.jdbc.OracleTypes.CURSOR);
    cs.execute();
    rs=(ResultSet)cs.getObject(3);

2、对存储过程赋值时:

   CallableStatement cs= conn.prepareCall("{call proc_fbquery(?)}"); //调用存储过程
   cs.registerOutParameter(1,oracle.jdbc.OracleTypes.CURSOR);
   cs.setCursorName(cusorName);  //提供result的名称
   cs.setString(1,rs);
   rs=cs.executeQuery();
   rs =(ResultSet)cs.getObject(1);

 

posted on 2008-03-03 22:18  一江水  阅读(1488)  评论(0编辑  收藏  举报