存储过程名:getTestData
Connection conn=BaseDao.getConn();
//是不带参数的
callableStatement cstmt=conn.prepareCall(" { call getTestData} ");
//是输入参数的,此时getTestData带有参数的
callableStatement cstmt=conn.prepareCall(" { call getTestDate(?,?,?)} ")
cstmt.setXXX(1,1);
cstmt.setXXX(2,2);
cstmt.setXXX(3,3);
//是输出参数的
callableStatement cstmt=conn.prepareCall(" { call getTestData(?,?,?)}");
cstmt.registerOutParameter(1,java.sql.Types.TINYINT);
cstmt.registerOutParameter(2,java.sql.Types.DECIMAL,3);
cstmt.executeQuery();
byte x=cstmt.getByte(1);
java.math.BigDecimal n=cstmt.getBigDecimal(2,3);//第二个输出参数,小数点后面带三位数
//既支持输入又接收输出参数(INOUT)
callableStatement cstmt=conn.prepareCall("{ getTestData(?)}");
cstmt.setByte(1,25);
cstmt.registerOutParameter(1,java.sql.Types.TINYINT);
cstmt.executeUpdate();
byte x=cstmt.getByte(1);
//放回结果参数的存储过程
"{?= call 过程名(?,?,?) }"