JDBC调用存储过程,进参出参
Posted 222nbsp
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JDBC调用存储过程,进参出参相关的知识,希望对你有一定的参考价值。
今天做了一个数据表拷贝的功能,用到了存储过程,就写了一个java中用jdbc调用存储过程的代码,成功的实现了功能,晚上跑回家记录下
1 Connection conn = ConnectionUtil.getConnect();//取得数据库连接 2 3 try { 4 CallableStatement cstmt = conn.prepareCall("{call prc_patch_config(?,?,?,?)}");//根据存储过程名字调用存储过程,?代表参数 5 /** 6 * 第3个、第4个?表示输出参数,所以在这里要声明输出类型 7 */ 8 cstmt.registerOutParameter(3, Types.INTEGER);//这个参数值得是数据复制成功(0)或者失败(1)的状态位。所以类型INTEGER来 9 cstmt.registerOutParameter(4, Types.VARCHAR);//这个参数值是存储过程报错信息 10 /** 11 * 1、2为进参,在这个程序中1代表的是批次号,2代表的 是表名 12 */ 13 cstmt.setString(1, (String) params.get("patchCode")); 14 cstmt.setString(2, (String) params.get("tableEnName")); 15 cstmt.execute();//执行存储过程 16 int isSuccess = cstmt.getInt(3);//取得是否成功的信息 17 log = cstmt.getString(4);//取得报错信息 18 19 } catch (SQLException e) { 20 e.printStackTrace(); 21 22 }finally { 23 try { 24 conn.close();//关闭连接 25 } catch (SQLException e) { 26 e.printStackTrace(); 27 } 28 }
以上就是我自己写的调用存储过程的代码,加了注释,怕自己以后看不懂
以上是关于JDBC调用存储过程,进参出参的主要内容,如果未能解决你的问题,请参考以下文章