给你个例子,研究一下有好处
http://www.huihoo.com/java/oracle/oracle8i_java.html

解决方案 »

  1.   

    /**
     * 执行数据库的Procedure,并返回记录集。
     */
    public ResultSet executeProcedureQuery(String sql) {
      ResultSet rs = null;  try {
    CallableStatement cstmt=conn.prepareCall(sql);
    rs = cstmt.executeQuery();
      } catch(SQLException ex) {
        //记录一个错误
        System.err.println("aq.executeQuery: " + ex.getMessage());
      }
      return rs;
    }
    /**
     * 执行数据库的Procedure,Procedure是更新操作。
     */
    public int executeProcedureUpdate(String sql) {
      int ret = 0;  try {
        CallableStatement cstmt=conn.prepareCall(sql);
        ret = cstmt.executeUpdate();
      } catch(SQLException ex) {
        System.err.println("aq.executeQuery: " + ex.getMessage());
      }  return ret;
    }
    这是执行存储过程的两个方法,下面是一个调用方法
    ResultSet rs=conn.executeProcedureQuery("{call 存储过程名(参数)}");