一JDBC调用存储过程
1.JDBC API中定义了一个CallableStatement接口,用于执行SQL存储过程
2存储过程调用代码
1) 创建CallableStatement对象
CallableStatement cstat;
cstat=con.prepareCall("{call demoSp(?,?)}");
2) 给存储过程中的参数输入参数值
cstat.setString(1,"HELLO");
cstat.setInt(2,199);
3) 给输出参数指定JDBC类型
cstat.registerOutParameter(2,Types.INTEGER);
4) 执行调用存储过程的语句
boolean hadResults=cstat.execute();
当execute()方法返回为真时,有结果集
5) 读取结果集
while(hadResults){
ResultSet rs=cstat.getResultSet();
while(rs.next()){
System.out.println(rs.getString(1));
}
hadResults=cstat.getMoreResults();
}
6) 读取输出参数的值
int outValue=cstat.getInt(2);
System.out.println(outValue);