java调用存储过程

java调用oracle存储过程获取存储过程传出参数:
第一种:单值返回(也就是返回单个的参数)
proc = conn.prepareCall("{ call HYQ.TESTB(?,?) }");
proc.setString(1, "100");
proc.registerOutParameter(2, Types.VARCHAR);

//为参数注值
proc.execute();//执行存储过程
String testPrint = proc.getString(2);//存储过程返回的结果
第二种:返回一个游标(也就是返回一行记录)
CallableStatement proc = null;
proc = conn.prepareCall("{ call hyq.testc(?) }");
proc.registerOutParameter(1,oracle.jdbc.OracleTypes.CURSOR);//如果是其他数据库的话(proc.registOutParameter(1,Types.Other))
proc.execute();//执行存储过程
rs = (ResultSet)proc.getObject(1);强制将游标类型转换成Object类型
while(rs.next()){
   System.out.println("<tr><td>" + rs.getString(1) + "</td><td>"+rs.getString(2)+"</td></tr>");
}

java调用存储过程非常简单。以上两种情况包含大部分的应用实例。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值