From 6d630cd53afcf3fb1250589390d65f8d7ab6d6d1 Mon Sep 17 00:00:00 2001 From: lukaseder Date: Wed, 10 Apr 2019 11:12:28 +0200 Subject: [PATCH] [#8434] Support H2 v1.4.198 array syntax H2 1.4.198 changed array syntax incompatibly to align the syntax with PostgreSQL, HSQLDB, and the SQL standard. The old syntax (which conflicts with row value expression) is no longer really supported. --- jOOQ-examples/jOOQ-academy/pom.xml | 2 +- jOOQ-examples/jOOQ-flyway-example/pom.xml | 2 +- jOOQ-examples/jOOQ-javaee-example/pom.xml | 2 +- jOOQ-examples/jOOQ-javafx-example/pom.xml | 2 +- jOOQ-examples/jOOQ-jpa-example/pom.xml | 2 +- jOOQ-examples/jOOQ-kotlin-example/pom.xml | 2 +- jOOQ-examples/jOOQ-spark-example/pom.xml | 2 +- jOOQ-examples/jOOQ-spring-example/pom.xml | 2 +- .../jOOQ-spring-guice-example/pom.xml | 2 +- jOOQ/src/main/java/org/jooq/impl/Array.java | 20 +++++-------------- 10 files changed, 14 insertions(+), 24 deletions(-) diff --git a/jOOQ-examples/jOOQ-academy/pom.xml b/jOOQ-examples/jOOQ-academy/pom.xml index b3e6d82e97..2a55e9ab02 100644 --- a/jOOQ-examples/jOOQ-academy/pom.xml +++ b/jOOQ-examples/jOOQ-academy/pom.xml @@ -19,7 +19,7 @@ UTF-8 3.12.0-SNAPSHOT - 1.4.198 + 1.4.199 diff --git a/jOOQ-examples/jOOQ-flyway-example/pom.xml b/jOOQ-examples/jOOQ-flyway-example/pom.xml index a09b17bb6b..55b4f589cf 100644 --- a/jOOQ-examples/jOOQ-flyway-example/pom.xml +++ b/jOOQ-examples/jOOQ-flyway-example/pom.xml @@ -20,7 +20,7 @@ UTF-8 3.2.6.RELEASE 3.12.0-SNAPSHOT - 1.4.198 + 1.4.199 2.12.7 jdbc:h2:~/flyway-test diff --git a/jOOQ-examples/jOOQ-javaee-example/pom.xml b/jOOQ-examples/jOOQ-javaee-example/pom.xml index c8f12a91f2..fe322f6d52 100644 --- a/jOOQ-examples/jOOQ-javaee-example/pom.xml +++ b/jOOQ-examples/jOOQ-javaee-example/pom.xml @@ -20,7 +20,7 @@ UTF-8 3.12.0-SNAPSHOT - 1.4.198 + 1.4.199 1.8 diff --git a/jOOQ-examples/jOOQ-javafx-example/pom.xml b/jOOQ-examples/jOOQ-javafx-example/pom.xml index c715bd36fb..cac55b3cc5 100644 --- a/jOOQ-examples/jOOQ-javafx-example/pom.xml +++ b/jOOQ-examples/jOOQ-javafx-example/pom.xml @@ -20,7 +20,7 @@ UTF-8 3.2.6.RELEASE 3.12.0-SNAPSHOT - 1.4.198 + 1.4.199 diff --git a/jOOQ-examples/jOOQ-jpa-example/pom.xml b/jOOQ-examples/jOOQ-jpa-example/pom.xml index fcf05496de..3cbaf17b02 100644 --- a/jOOQ-examples/jOOQ-jpa-example/pom.xml +++ b/jOOQ-examples/jOOQ-jpa-example/pom.xml @@ -19,7 +19,7 @@ UTF-8 3.12.0-SNAPSHOT - 1.4.198 + 1.4.199 5.3.1.Final 5.0.7.RELEASE diff --git a/jOOQ-examples/jOOQ-kotlin-example/pom.xml b/jOOQ-examples/jOOQ-kotlin-example/pom.xml index 2a4b52010d..da96223ee4 100644 --- a/jOOQ-examples/jOOQ-kotlin-example/pom.xml +++ b/jOOQ-examples/jOOQ-kotlin-example/pom.xml @@ -21,7 +21,7 @@ UTF-8 1.2.30 3.12.0-SNAPSHOT - 1.4.198 + 1.4.199 diff --git a/jOOQ-examples/jOOQ-spark-example/pom.xml b/jOOQ-examples/jOOQ-spark-example/pom.xml index d0e24738af..3eabfbecbb 100644 --- a/jOOQ-examples/jOOQ-spark-example/pom.xml +++ b/jOOQ-examples/jOOQ-spark-example/pom.xml @@ -20,7 +20,7 @@ UTF-8 3.2.6.RELEASE 3.12.0-SNAPSHOT - 1.4.198 + 1.4.199 diff --git a/jOOQ-examples/jOOQ-spring-example/pom.xml b/jOOQ-examples/jOOQ-spring-example/pom.xml index a701283a22..51bbae7875 100644 --- a/jOOQ-examples/jOOQ-spring-example/pom.xml +++ b/jOOQ-examples/jOOQ-spring-example/pom.xml @@ -20,7 +20,7 @@ UTF-8 4.3.10.RELEASE 3.12.0-SNAPSHOT - 1.4.198 + 1.4.199 diff --git a/jOOQ-examples/jOOQ-spring-guice-example/pom.xml b/jOOQ-examples/jOOQ-spring-guice-example/pom.xml index 41cab133ad..c0f819028e 100644 --- a/jOOQ-examples/jOOQ-spring-guice-example/pom.xml +++ b/jOOQ-examples/jOOQ-spring-guice-example/pom.xml @@ -20,7 +20,7 @@ UTF-8 4.2.4.RELEASE 3.12.0-SNAPSHOT - 1.4.198 + 1.4.199 diff --git a/jOOQ/src/main/java/org/jooq/impl/Array.java b/jOOQ/src/main/java/org/jooq/impl/Array.java index 5dac50a3f0..583bf01972 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Array.java +++ b/jOOQ/src/main/java/org/jooq/impl/Array.java @@ -78,22 +78,12 @@ final class Array extends AbstractField { @Override public final void accept(Context ctx) { switch (ctx.family()) { + + + + + case H2: - ctx.sql('(').visit(fields); - - // [#7878] Single element arrays in H2 need a trailing comma to distinguish between e.g. - // (1), the parenthesised integer, and (1,) the array. - // See: http://h2database.com/html/grammar.html#array - if (fields.size() == 1) - ctx.sql(','); - - ctx.sql(')'); - break; - - - - - case HSQLDB: case POSTGRES: default: