diff --git a/jOOQ/src/main/java/org/jooq/impl/TableImpl.java b/jOOQ/src/main/java/org/jooq/impl/TableImpl.java index 2ba214f11f..57bda00696 100644 --- a/jOOQ/src/main/java/org/jooq/impl/TableImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/TableImpl.java @@ -230,22 +230,20 @@ public class TableImpl extends AbstractTable { ctx.visit(alias); } else { + if (parameters != null && REQUIRES_TVF_TABLE_CONSTRUCTOR.contains(ctx.dialect()) && ctx.declareTables()) { + ctx.visit(K_TABLE) + .sql('('); + accept0(ctx); + ctx.sql(')'); - - - - - - - - - - - - - - accept0(ctx); + // [#4834] Generate alias only if allowed to do so + if (ctx.declareAliases()) + ctx.sql(' ') + .visit(Tools.getMappedTable(ctx.configuration(), this).getUnqualifiedName()); + } + else + accept0(ctx); }