zoukankan      html  css  js  c++  java
  • Java 批量插入数据(Oracle)

    //批量添加20000条数据用时8秒。
    try {
       String url = "jdbc:oracle:thin:@IP:1521:orcl"; // orcl为数据库的SID
       String user = "oracle";
       String password = "oracle";
       StringBuffer sql = new StringBuffer();
       sql.append("insert into ex_log (EX_LOG_ID,EX_LOG_DATE) values (?,?)");
       Class.forName("oracle.jdbc.driver.OracleDriver");
       Connection con = (Connection) DriverManager.getConnection(url,user,password);
       // 关闭事务自动提交
       con.setAutoCommit(false);
     
       Long startTime = System.currentTimeMillis();
       PreparedStatement pst = (PreparedStatement) con.prepareStatement(sql.toString());
       for (int i = 0; i < list.size(); i++) {
        ExLog exLog = (ExLog)list.get(i);
        pst.setString(1, exLog.getExLogId());
        pst.setString(2, exLog.getExLogDate());
        // 把一个SQL命令加入命令列表
        pst.addBatch();
       }
       // 执行批量更新
       pst.executeBatch();
       // 语句执行完毕,提交本事务
       con.commit();
       Long endTime = System.currentTimeMillis();
       System.out.println("用时:" + (endTime - startTime));
       pst.close();
       con.close();
      } catch (ClassNotFoundException e) {
       e.printStackTrace();
      } catch (SQLException e) {
       e.printStackTrace();
      }
     
  • 相关阅读:
    hbase java api
    hbase
    误删/usr文件夹解决办法
    死锁问题 代码示例
    H2O 生成 多线程并发控制 Semaphore
    多线程 打印零与奇偶数
    多线程交替打印 采用Semaphore
    多线程按顺序执行
    判断回文数
    整数反转
  • 原文地址:https://www.cnblogs.com/wangyayun/p/4514411.html
Copyright © 2011-2022 走看看