zoukankan      html  css  js  c++  java
  • 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         }

    以上就是我自己写的调用存储过程的代码,加了注释,怕自己以后看不懂

  • 相关阅读:
    perl的eval语句
    PythonWin运行出错解决办法
    python多重继承
    perl调用shell
    python正则表达式匹配中文
    perl学习2处理用户输入
    awk介绍
    perl学习3qw及数组的应用
    perl的多线程
    perl学习5子程序中自动识别参数
  • 原文地址:https://www.cnblogs.com/zhyStudy/p/7642991.html
Copyright © 2011-2022 走看看