public void executeUpdate(Connection connection) {
        rows.forEach(row -> {
            try {
                setRecordToStatement(updateStatement, JDBCTypeConvertUtils.getSqlTypeFromFieldType(fieldTypes), row);
                updateStatement.executeUpdate();
                JdbcConnectionUtil.commit(connection);
            } catch (Exception e) {
                JdbcConnectionUtil.rollBack(connection);
                JdbcConnectionUtil.commit(connection);
                if (metricOutputFormat.outDirtyRecords.getCount() % DIRTY_DATA_PRINT_FREQUENCY == 0 || LOG.isDebugEnabled()) {
                    LOG.error("record insert failed ,this row is {}", row.toString());
                    LOG.error("", e);
                }
                metricOutputFormat.outDirtyRecords.inc();
            }
        });
        rows.clear();
    }
execute batch update statement

@throws SQLException throw sql exception
impala/impala-sink/src/main/java/com/dtstack/flink/sql/sink/impala/ImpalaOutputFormat.java