From 1f61ab5d97d56d9da662276a17c7daeac3ece5f7 Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Wed, 30 Mar 2022 14:18:02 +0200 Subject: [PATCH] [jOOQ/jOOQ#10523] Move the dialect support to DerivedTable --- jOOQ/src/main/java/org/jooq/impl/DerivedTable.java | 11 ++++++++++- jOOQ/src/main/java/org/jooq/impl/TableImpl.java | 2 +- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/jOOQ/src/main/java/org/jooq/impl/DerivedTable.java b/jOOQ/src/main/java/org/jooq/impl/DerivedTable.java index 99cbd07b82..fb82fe9320 100644 --- a/jOOQ/src/main/java/org/jooq/impl/DerivedTable.java +++ b/jOOQ/src/main/java/org/jooq/impl/DerivedTable.java @@ -38,15 +38,23 @@ package org.jooq.impl; +// ... +import static org.jooq.SQLDialect.H2; +// ... +import static org.jooq.SQLDialect.MARIADB; +import static org.jooq.SQLDialect.MYSQL; // ... import static org.jooq.impl.Names.N_T; import static org.jooq.impl.Tools.visitSubquery; +import java.util.Set; + import org.jooq.Clause; import org.jooq.Context; import org.jooq.Function1; import org.jooq.Name; import org.jooq.Record; +import org.jooq.SQLDialect; import org.jooq.Select; import org.jooq.Table; import org.jooq.TableOptions; @@ -56,7 +64,8 @@ import org.jooq.TableOptions; */ class DerivedTable extends AbstractTable implements QOM.DerivedTable { - private final Select query; + static final Set NO_SUPPORT_CORRELATED_DERIVED_TABLE = SQLDialect.supportedUntil(H2, MARIADB); + private final Select query; DerivedTable(Select query) { this(query, N_T); diff --git a/jOOQ/src/main/java/org/jooq/impl/TableImpl.java b/jOOQ/src/main/java/org/jooq/impl/TableImpl.java index d092165fb5..454cca61ce 100644 --- a/jOOQ/src/main/java/org/jooq/impl/TableImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/TableImpl.java @@ -65,6 +65,7 @@ import static org.jooq.impl.DSL.select; import static org.jooq.impl.DSL.selectFrom; import static org.jooq.impl.DSL.val; import static org.jooq.impl.DefaultMetaProvider.meta; +import static org.jooq.impl.DerivedTable.NO_SUPPORT_CORRELATED_DERIVED_TABLE; import static org.jooq.impl.Internal.createPathAlias; import static org.jooq.impl.Keywords.K_TABLE; import static org.jooq.impl.Names.N_MULTISET; @@ -491,7 +492,6 @@ implements - /**