java调用存储过程,存储过程在java中用法
先查出一条数据,更新这条数据,代码只贴调用过程的代码,只有传参没有返回
String call="{call dzjc.gzwfsj(?,?)}" ; //调用语句 CallableStatement proc = PageDBConnection.getConnection().prepareCall(call); //调用存储过程 //这个存储过程无返回值//需要注意的是存储过程的字段顺序和类型要跟过程中的对应上,让他们相同,call问号的个数和下边set的个数对应上,要让他们相同 proc.setString(1,xm); proc.setString(2,age); proc.execute(); //执行 proc.close(); PageDBConnection.getConnection().close();public static void main(String[] args) {DataBaseConnection db=new DataBaseConnection();Connection c=db.getConnection();CallableStatement proc;try { proc = c.prepareCall("{call p11(?,?) }"); proc.setInt(1, 12);// proc.getString(2); proc.registerOutParameter(1, Types.INTEGER); proc.registerOutParameter(2, Types.CHAR); proc.execute(); // int age = proc.getInt(1);// String age2 = proc.getString(2);// // System.out.println(age);// System.out.println(age2); } catch (SQLException e) { // TODO 自动生成 catch 块 e.printStackTrace();}////proc.setString(2, poetName);//cs.execute(); }
黑色头发 http://heisetoufa.iteye.com
页:
[1]