From 0e9b6bfd91aaf3ba7634dcab35660371324092f3 Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Mon, 20 Feb 2023 15:11:39 +0100 Subject: [PATCH] [jOOQ/jOOQ#14660] Work around Snowflake's INSERT .. VALUES limitation of not being able to reference expressions --- jOOQ/src/main/java/org/jooq/impl/FieldMapsForInsert.java | 1 + jOOQ/src/main/java/org/jooq/impl/Tools.java | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/jOOQ/src/main/java/org/jooq/impl/FieldMapsForInsert.java b/jOOQ/src/main/java/org/jooq/impl/FieldMapsForInsert.java index ed57db4e24..6ce44f4b1f 100644 --- a/jOOQ/src/main/java/org/jooq/impl/FieldMapsForInsert.java +++ b/jOOQ/src/main/java/org/jooq/impl/FieldMapsForInsert.java @@ -357,6 +357,7 @@ final class FieldMapsForInsert extends AbstractQueryPart implements UNotYetImple + default: diff --git a/jOOQ/src/main/java/org/jooq/impl/Tools.java b/jOOQ/src/main/java/org/jooq/impl/Tools.java index 7a1c7fcba3..82aa9a755b 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Tools.java +++ b/jOOQ/src/main/java/org/jooq/impl/Tools.java @@ -3799,6 +3799,11 @@ final class Tools { return field instanceof Param; } + static final boolean isParamOrCastParam(Field field) { + return field instanceof Param + || field instanceof Cast && isParamOrCastParam(((Cast) field).$field()); + } + static final boolean isVal(Field field) { return field instanceof Val || field instanceof ConvertedVal && ((ConvertedVal) field).delegate instanceof Val;