17,382
社区成员




qq 35320766邮箱
import java.sql.*;
public class Test2 {
public static void main(String[] args) {
// TODO Auto-generated method stub
try{ Class.forName("oracle.jdbc.driver.OracleDriver");
Connection conn=DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:ORCL","SCOTT","m123");
CallableStatement cs=conn.prepareCall("{call sp_pro14(?,?)}");
//第三种 游标方式
cs.setInt(1, 20);
cs.registerOutParameter(2, oracle.jdbc.OracleTypes.CURSOR);
cs.execute();
ResultSet rs= (ResultSet)cs.getObject(2);
while(rs.next())
{
System.out.println(rs.getInt(1)+" "+rs.getString(2));
}
conn.close();
cs.close();
}catch(Exception e){e.printStackTrace();}
}
}
--创建一个包,在该包中,我定游标类型 test_cursor
create or replace package testpackage as
type test_cursor is ref cursor;
end testpackage;
--创建过程
create or replace procedure sp_pro14
(spNo in number,p_cursor out testpackage.test_cursor) is
begin
open p_cursor for select * from emp where deptno=spNo;
end;