打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Java的jdbc使用addBatch进行批处理操作的几种方式

方式一、批量执行预定义模式的SQLpublic static void exeBatch(Connection conn) {

  try {
          String sql = "insert into t_example (code, name) values (?,?)";
          PreparedStatement pstmt = conn.prepareStatement(sql);
          pstmt.setString(1, "java2");
          pstmt.setString(2, "java");
          //添加一次预定义参数
          pstmt.addBatch();      
          pstmt.setString(1, "360sdn");
          pstmt.setString(2, "软件开发技术网");
          //再添加一次预定义参数
          pstmt.addBatch();      
          //批量执行预定义SQL
          pstmt.executeBatch();
    } catch (SQLException e) {
          e.printStackTrace();
    } finally {
          closeConnection(conn);
  }
 }

方式二、批量执行混合模式的SQL、有预定义的,还有静态的
public static void exeBatchMixedSQL( Connection conn) {
  PreparedStatement pstmt =null;
 try {
         String sql = "insert into t_example (code, name) values (?,?)";
         PreparedStatement pstmt = conn.prepareStatement(sql);
         pstmt.setString(1, "java");
         pstmt.setString(2, "360sdn");
 //添加一次预定义参数
         pstmt.addBatch();  
          pstmt.setString(1, "360sdn");
          pstmt.setString(2, "软件开发技术网");
//再添加一次预定义参数
         pstmt.addBatch();   
         //添加一次静态SQL
         pstmt.addBatch("update t_example set code= '360.com' where code='360sdn'");
         //批量执行预定义SQL
         pstmt.executeBatch();
 } catch (SQLException e) {
         e.printStackTrace();
 } finally {
         closeConnection(conn);
 }
        }

方式三、执行批量静态的SQL//执行批量静态的SQL
ublic static void exeBatchSQL(Connection conn) {
  try {
          Statement stmt = conn.createStatement();
          //连续添加多条静态SQL
          stmt.addBatch("insert into t_example (code, name) values ('java', '360sdn.com')");
          stmt.addBatch("insert into t_example (code, name) values ('360', '360sdn')");
          stmt.addBatch("delete from t_example where code='java'");
          stmt.addBatch("update t_example set kind = '360data' where kind='360'");
//批量执行不支持Select语句
//          stmt.addBatch("select count(*) from t_example"); 
          //执行批量执行
          stmt.executeBatch();
  } catch (SQLException e) {
          e.printStackTrace();
  } finally {
          closeConnection(conn);
  }
        } 
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
批处理batch,执行多个SQL语句
java中oracle批(batch)处理
Statement 优化
关于PreparedStatement.addBatch()方法
Oracle提高数据处理效率---对于大批量数据来说例如几百万条数据的处理
浅谈 JDBC 中 CreateStatement 和 PrepareStatement 的区别与优劣。
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服