JDBC批量插入、批量删除、批量更新

一、JDBC的批量插入

二、JDBC的批量更新

三、JDBC的批量删除


方法一:使用PreparedStatement加批量的方法

    try {   
            Class.forName("com.mysql.jdbc.Driver");   
            conn = DriverManager.getConnection(o_url, userName, password);   
            conn.setAutoCommit(false);   
            String sql = "INSERT adlogs(ip,website,yyyymmdd,hour,object_id) VALUES(?,?,?,?,?)";   
            PreparedStatement prest = conn.prepareStatement(sql,ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);   
            for(int x = 0; x < size; x++){   
               prest.setString(1, "192.168.1.1");   
               prest.setString(2, "localhost");   
               prest.setString(3, "20081009");   
               prest.setInt(4, 8);   
               prest.setString(5, "11111111");   
               prest.addBatch();   
            }   
            prest.executeBatch();   
            conn.commit();   
            conn.close();   
      } catch (SQLException ex) {   
          Logger.getLogger(MyLogger.class.getName()).log(Level.SEVERE, null, ex);   
      } catch (ClassNotFoundException ex) {   
           Logger.getLogger(MyLogger.class.getName()).log(Level.SEVERE, null, ex);   
      }  

方法二:使用Statement加批量的方法

    try {

            Class.forName("com.mysql.jdbc.Driver");   
            conn = DriverManager.getConnection(o_url, userName, password);   

            conn.setAutoCommit(false);   
            Statement stmt =conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);   
            for(int x = 0; x < size;x++){   
              stmt.addBatch("INSERT INTOadlogs(ip,website,yyyymmdd,hour,object_id) VALUES('192.168.1.3','localhost','20081009',8,'23123')");   

            }   
            stmt.executeBatch();   
            conn.commit();   
            conn.close();   

      } catch (SQLException ex) {   
         Logger.getLogger(MyLogger.class.getName()).log(Level.SEVERE, null, ex);   
      } catch (ClassNotFoundException ex) {   
           Logger.getLogger(MyLogger.class.getName()).log(Level.SEVERE, null, ex);   
      }  

方法三:直接使用Statement

    try {   

            Class.forName("com.mysql.jdbc.Driver");   
            conn = DriverManager.getConnection(o_url, userName, password);   
            conn.setAutoCommit(false);   
            Statement stmt =conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,   
            ResultSet.CONCUR_READ_ONLY);   
            for(int x = 0; x < size;x++){   
               stmt.execute("INSERT INTOadlogs(ip,website,yyyymmdd,hour,object_id) VALUES('192.168.1.3','localhost','20081009',8,'23123')");   
            }  

            conn.commit();   
            conn.close();   

      } catch (SQLException ex) {   
          Logger.getLogger(MyLogger.class.getName()).log(Level.SEVERE, null, ex);   
      } catch (ClassNotFoundException ex) {   
           Logger.getLogger(MyLogger.class.getName()).log(Level.SEVERE, null, ex);   
      }  


  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值