From 905f06f5a609d519fbd259839957bebb1c75decc Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Thu, 15 Jul 2021 09:38:56 +0200 Subject: [PATCH] [jOOQ/jOOQ#12197] The DataKey.DATA_PREPEND_SQL and DATA_APPEND_SQL feature must work on Query only, not other QueryParts --- .../java/org/jooq/impl/DefaultRenderContext.java | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/jOOQ/src/main/java/org/jooq/impl/DefaultRenderContext.java b/jOOQ/src/main/java/org/jooq/impl/DefaultRenderContext.java index ca4dcff6a5..9e2feda40d 100644 --- a/jOOQ/src/main/java/org/jooq/impl/DefaultRenderContext.java +++ b/jOOQ/src/main/java/org/jooq/impl/DefaultRenderContext.java @@ -104,6 +104,7 @@ class DefaultRenderContext extends AbstractContext implements Ren private boolean separatorRequired; private boolean separator; private boolean newline; + private Boolean isQuery; // [#1632] Cached values from Settings RenderKeywordCase cachedRenderKeywordCase; @@ -373,8 +374,13 @@ class DefaultRenderContext extends AbstractContext implements Ren @Override public final String render() { - String prepend = (String) data(DATA_PREPEND_SQL); - String append = (String) data(DATA_APPEND_SQL); + String prepend = null; + String append = null; + + if (TRUE.equals(isQuery)) { + prepend = (String) data(DATA_PREPEND_SQL); + append = (String) data(DATA_APPEND_SQL); + } String result = sql.toString(); @@ -697,6 +703,9 @@ class DefaultRenderContext extends AbstractContext implements Ren @Override protected final void visit0(QueryPartInternal internal) { + if (isQuery == null) + isQuery = internal instanceof Query; +