当前位置:Gxlcms > 数据库问题 > 关于DBUtils中QueryRunner看批量删除语句batch

关于DBUtils中QueryRunner看批量删除语句batch

时间:2021-07-01 10:21:17 帮助过:53人阅读

int[] batch(String sql, Object[][] params) throws SQLException { Connection conn = this.prepareConnection(); return this.batch(conn, true, sql, params); } private int[] batch(Connection conn, boolean closeConn, String sql, Object[][] params) throws SQLException { if (conn == null) { throw new SQLException("Null connection"); } if (sql == null) { if (closeConn) { close(conn); } throw new SQLException("Null SQL statement"); } if (params == null) { if (closeConn) { close(conn); } throw new SQLException("Null parameters. If parameters aren‘t need, pass an empty array."); } PreparedStatement stmt = null; int[] rows = null; try { stmt = this.prepareStatement(conn, sql); for (int i = 0; i < params.length; i++) { this.fillStatement(stmt, params[i]); stmt.addBatch(); } rows = stmt.executeBatch(); } catch (SQLException e) { this.rethrow(e, sql, (Object[])params); } finally { close(stmt); if (closeConn) { close(conn); } } return rows; }

解读: 因为params是一个二维数组, 所以往preparedStatement中赋值的时候使用了for循环, 然后通过preparedstatement.addBatch() 进行批量添加, 然后执行executeBatch()进行操作.

 

本文转自:https://www.cnblogs.com/wang-meng/p/5525389.html

关于DBUtils中QueryRunner看批量删除语句batch

标签:param   二维   batch   new   数组   target   null   实现   dba   

人气教程排行