From 2ee2c27b482f6ca0e4720d179e1bf966f7a676a0 Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Tue, 21 Aug 2018 12:20:44 +0200 Subject: [PATCH] [#7319] SQLDialectNotSupportedException: The ON DUPLICATE KEY UPDATE clause cannot be emulated for DEFAULT when using the Batch API with named parameters --- jOOQ/src/main/java/org/jooq/impl/BatchSingle.java | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/jOOQ/src/main/java/org/jooq/impl/BatchSingle.java b/jOOQ/src/main/java/org/jooq/impl/BatchSingle.java index a2681838ff..a80801afb9 100644 --- a/jOOQ/src/main/java/org/jooq/impl/BatchSingle.java +++ b/jOOQ/src/main/java/org/jooq/impl/BatchSingle.java @@ -131,7 +131,7 @@ final class BatchSingle implements BatchBindStep { @SafeVarargs public final BatchSingle bind(Map... namedBindValues) { - List defaultValues = query.getBindValues(); + List defaultValues = create.extractBindValues(query); Object[][] bindValues = new Object[namedBindValues.length][]; for (int row = 0; row < bindValues.length; row++) { @@ -140,11 +140,9 @@ final class BatchSingle implements BatchBindStep { for (Entry entry : namedBindValues[row].entrySet()) { List indexes = nameToIndexMapping.get(entry.getKey()); - if (indexes != null) { - for (int index : indexes) { + if (indexes != null) + for (int index : indexes) bindValues[row][index] = entry.getValue(); - } - } } } @@ -172,12 +170,10 @@ final class BatchSingle implements BatchBindStep { // [#1180] Run batch queries with BatchMultiple, if no bind variables // should be used... - if (executeStaticStatements(configuration.settings())) { + if (executeStaticStatements(configuration.settings())) return executeStatic(); - } - else { + else return executePrepared(); - } } private final void checkBindValues() {