存储过程的创建参考 存储过程的演示
关键代码如下:
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.SQLException;
import oracle.jdbc.OracleTypes;
import util.JDBCUtil;
public class Test1 {
//CREATE OR REPLACE procedure queryemp
// (eno in number,pename out varchar2,psal out varchar2,pjob out varchar2)
// {call <procedure-name>[(<arg1>,<arg2>, ...)]}
public static void main(String[] args) {
Connection conn = null;
System.out.println("连接成功");
String sql = "{call queryemp(?,?,?,?)}";
CallableStatement call = null;
try {
conn = JDBCUtil.getConnection();
call = conn.prepareCall(sql);
//为In 参数赋值
call.setInt(1, 7839);
//为out参数声明类型
call.registerOutParameter(2, OracleTypes.VARCHAR);
call.registerOutParameter(3, OracleTypes.NUMBER);
call.registerOutParameter(4, OracleTypes.VARCHAR);
call.execute();
String name = call.getString(2);
String job = call.getString(4);
int sal = call.getInt(3);
System.out.println(name + ": " + job + " " + sal);
} catch (SQLException e) {
e.printStackTrace();
}finally{
JDBCUtil.release(conn, call, null);
}
}
}