ExcuteBatch()一括実行Sql文

2618 ワード

executeBatch()メソッド:SQL文を一括して実行しますが、ResultSetの結果セットであるSQL文を返す代わりにstmtを直接実行することはできません.executeBatch(); addBatch():バッチに更新文を追加します.clearBatch():バッチの更新文を空にする

 public void executeBatch() throws SQLException {
            Connection con = Toolkit. getMySqlConnection();
            String sql = "xxx";
            String sql_2 = "xxx";

            Statement st = null;
           // Statement、PreparedStatement(   Statement     ) CallableStatement(   PreparedStatement     )。              SQL   :Statement               SQL   ;PreparedStatement            IN       SQL   ;CallableStatement                   。
             try {
                   st = con.createStatement();

                   //conn.setAutoCommit()         SQL  ,         。                 SQL        。         ,  rollback(); true            ,false      
                   con.setAutoCommit(false);
                   //  addBatch()  SQL  
                   st.addBatch(sql);
                   st.addBatch(sql_2);
                   st.addBatch(....);
                //  executeBatch()    sql  
                   st.executeBatch();
                   con.commit();
            } catch (SQLException e) {
                   loger.info(e.getMessage());
            } finally {
                  Toolkit. close(con);
                  st.close();
            }
      }