CREATE OR REPLACE PROCEDURE test01(p1 IN integer,p2 IN integer,p_count out integer,p_cur out sys_refcursor)
as
begin
select count(t.log_user_id) into p_count from hpl_base_t_log t;
open p_cur for
select * from (
select ROWNUM row_number, temp_t.*
from (
select t.*
from hpl_base_t_log t
-- where t.log_user_id = 99
order by t.log_write_time desc
) temp_t where ROWNUM<=p2
) temp_page_t
where temp_page_t.row_number>=p1;
end;
CALL test01 (?,?,?,?)
try {
Class.forName(drive);
Connection con=DriverManager.getConnection(url, name, password);
** String sql = "{call sel_pro(?)}";
CallableStatement cs=con.prepareCall(sql);
cs.registerOutParameter(1,oracle.jdbc.OracleTypes.CURSOR);****
cs.execute();
ResultSet rs=(ResultSet)cs.getObject(1);
//System.out.println(cs.getString(1));
while(rs.next()){
System.out.println("============"+rs.getString(1)+rs.getString(2));
}
rs.close();
cs.close();
con.close();
}