From dcc6c0e155db6544867a9965db3599ff476c7a6b Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Fri, 1 May 2020 19:41:35 +0200 Subject: [PATCH] [jOOQ/jOOQ#10153] Get HANA dialect support up to date --- .../main/java/org/jooq/AlterIndexOnStep.java | 1 + .../main/java/org/jooq/AlterIndexStep.java | 1 + .../main/java/org/jooq/AlterSchemaStep.java | 1 + .../java/org/jooq/AlterTableAlterStep.java | 1 + .../main/java/org/jooq/DropSchemaStep.java | 1 + .../jooq/XMLTableColumnForOrdinalityStep.java | 1 + .../java/org/jooq/XMLTableColumnPathStep.java | 1 + .../org/jooq/XMLTableColumnsFirstStep.java | 1 + .../java/org/jooq/XMLTablePassingStep.java | 1 + .../java/org/jooq/impl/AlterIndexImpl.java | 1 + .../java/org/jooq/impl/AlterSchemaImpl.java | 34 ++++++++++++++----- .../java/org/jooq/impl/AlterTableImpl.java | 15 ++++++-- .../java/org/jooq/impl/ConstraintImpl.java | 1 + .../src/main/java/org/jooq/impl/XMLTable.java | 16 +++++++++ 14 files changed, 66 insertions(+), 10 deletions(-) diff --git a/jOOQ/src/main/java/org/jooq/AlterIndexOnStep.java b/jOOQ/src/main/java/org/jooq/AlterIndexOnStep.java index 0ba174aeda..f5312152d3 100644 --- a/jOOQ/src/main/java/org/jooq/AlterIndexOnStep.java +++ b/jOOQ/src/main/java/org/jooq/AlterIndexOnStep.java @@ -44,6 +44,7 @@ package org.jooq; // ... import static org.jooq.SQLDialect.DERBY; import static org.jooq.SQLDialect.H2; +// ... import static org.jooq.SQLDialect.HSQLDB; import static org.jooq.SQLDialect.MARIADB; // ... diff --git a/jOOQ/src/main/java/org/jooq/AlterIndexStep.java b/jOOQ/src/main/java/org/jooq/AlterIndexStep.java index 96a1791d01..004615df39 100644 --- a/jOOQ/src/main/java/org/jooq/AlterIndexStep.java +++ b/jOOQ/src/main/java/org/jooq/AlterIndexStep.java @@ -44,6 +44,7 @@ package org.jooq; // ... import static org.jooq.SQLDialect.DERBY; import static org.jooq.SQLDialect.H2; +// ... import static org.jooq.SQLDialect.HSQLDB; import static org.jooq.SQLDialect.MARIADB; // ... diff --git a/jOOQ/src/main/java/org/jooq/AlterSchemaStep.java b/jOOQ/src/main/java/org/jooq/AlterSchemaStep.java index 749d31daef..7995618e59 100644 --- a/jOOQ/src/main/java/org/jooq/AlterSchemaStep.java +++ b/jOOQ/src/main/java/org/jooq/AlterSchemaStep.java @@ -39,6 +39,7 @@ package org.jooq; // ... import static org.jooq.SQLDialect.H2; +// ... import static org.jooq.SQLDialect.HSQLDB; import static org.jooq.SQLDialect.POSTGRES; // ... diff --git a/jOOQ/src/main/java/org/jooq/AlterTableAlterStep.java b/jOOQ/src/main/java/org/jooq/AlterTableAlterStep.java index 25d049cbde..217bb1a4ab 100644 --- a/jOOQ/src/main/java/org/jooq/AlterTableAlterStep.java +++ b/jOOQ/src/main/java/org/jooq/AlterTableAlterStep.java @@ -48,6 +48,7 @@ import static org.jooq.SQLDialect.DERBY; import static org.jooq.SQLDialect.FIREBIRD; // ... import static org.jooq.SQLDialect.H2; +// ... import static org.jooq.SQLDialect.HSQLDB; // ... // ... diff --git a/jOOQ/src/main/java/org/jooq/DropSchemaStep.java b/jOOQ/src/main/java/org/jooq/DropSchemaStep.java index c4f2b66fb2..b3b2e078d6 100644 --- a/jOOQ/src/main/java/org/jooq/DropSchemaStep.java +++ b/jOOQ/src/main/java/org/jooq/DropSchemaStep.java @@ -39,6 +39,7 @@ package org.jooq; // ... import static org.jooq.SQLDialect.H2; +// ... import static org.jooq.SQLDialect.HSQLDB; import static org.jooq.SQLDialect.POSTGRES; // ... diff --git a/jOOQ/src/main/java/org/jooq/XMLTableColumnForOrdinalityStep.java b/jOOQ/src/main/java/org/jooq/XMLTableColumnForOrdinalityStep.java index 1bf7b4a120..780ffd272a 100644 --- a/jOOQ/src/main/java/org/jooq/XMLTableColumnForOrdinalityStep.java +++ b/jOOQ/src/main/java/org/jooq/XMLTableColumnForOrdinalityStep.java @@ -37,6 +37,7 @@ */ package org.jooq; +// ... // ... // ... import static org.jooq.SQLDialect.POSTGRES; diff --git a/jOOQ/src/main/java/org/jooq/XMLTableColumnPathStep.java b/jOOQ/src/main/java/org/jooq/XMLTableColumnPathStep.java index d99185f885..c4b0f798ab 100644 --- a/jOOQ/src/main/java/org/jooq/XMLTableColumnPathStep.java +++ b/jOOQ/src/main/java/org/jooq/XMLTableColumnPathStep.java @@ -37,6 +37,7 @@ */ package org.jooq; +// ... // ... // ... import static org.jooq.SQLDialect.POSTGRES; diff --git a/jOOQ/src/main/java/org/jooq/XMLTableColumnsFirstStep.java b/jOOQ/src/main/java/org/jooq/XMLTableColumnsFirstStep.java index fc396b823c..31adbc080b 100644 --- a/jOOQ/src/main/java/org/jooq/XMLTableColumnsFirstStep.java +++ b/jOOQ/src/main/java/org/jooq/XMLTableColumnsFirstStep.java @@ -37,6 +37,7 @@ */ package org.jooq; +// ... // ... // ... import static org.jooq.SQLDialect.POSTGRES; diff --git a/jOOQ/src/main/java/org/jooq/XMLTablePassingStep.java b/jOOQ/src/main/java/org/jooq/XMLTablePassingStep.java index 33bbae6200..e15d52091c 100644 --- a/jOOQ/src/main/java/org/jooq/XMLTablePassingStep.java +++ b/jOOQ/src/main/java/org/jooq/XMLTablePassingStep.java @@ -37,6 +37,7 @@ */ package org.jooq; +// ... // ... // ... import static org.jooq.SQLDialect.POSTGRES; diff --git a/jOOQ/src/main/java/org/jooq/impl/AlterIndexImpl.java b/jOOQ/src/main/java/org/jooq/impl/AlterIndexImpl.java index 4a6af68594..f0bfda3e82 100644 --- a/jOOQ/src/main/java/org/jooq/impl/AlterIndexImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/AlterIndexImpl.java @@ -50,6 +50,7 @@ import static org.jooq.SQLDialect.FIREBIRD; // ... // ... // ... +// ... import static org.jooq.impl.DSL.index; import static org.jooq.impl.DSL.inline; import static org.jooq.impl.DSL.name; diff --git a/jOOQ/src/main/java/org/jooq/impl/AlterSchemaImpl.java b/jOOQ/src/main/java/org/jooq/impl/AlterSchemaImpl.java index 9d2dff80f6..5ebbcbddce 100644 --- a/jOOQ/src/main/java/org/jooq/impl/AlterSchemaImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/AlterSchemaImpl.java @@ -40,10 +40,16 @@ package org.jooq.impl; import static org.jooq.Clause.ALTER_SCHEMA; import static org.jooq.Clause.ALTER_SCHEMA_RENAME; import static org.jooq.Clause.ALTER_SCHEMA_SCHEMA; +// ... import static org.jooq.impl.DSL.name; import static org.jooq.impl.Keywords.K_ALTER_SCHEMA; import static org.jooq.impl.Keywords.K_IF_EXISTS; +import static org.jooq.impl.Keywords.K_RENAME; import static org.jooq.impl.Keywords.K_RENAME_TO; +import static org.jooq.impl.Keywords.K_SCHEMA; +import static org.jooq.impl.Keywords.K_TO; + +import java.util.Set; import org.jooq.AlterSchemaFinalStep; import org.jooq.AlterSchemaStep; @@ -51,6 +57,8 @@ import org.jooq.Clause; import org.jooq.Configuration; import org.jooq.Context; import org.jooq.Name; +// ... +import org.jooq.SQLDialect; import org.jooq.Schema; /** @@ -65,12 +73,16 @@ final class AlterSchemaImpl extends AbstractRowCountQuery implements /** * Generated UID */ - private static final long serialVersionUID = 8904572826501186329L; - private static final Clause[] CLAUSES = { ALTER_SCHEMA }; + private static final long serialVersionUID = 8904572826501186329L; + private static final Clause[] CLAUSES = { ALTER_SCHEMA }; - private final Schema schema; - private final boolean ifExists; - private Schema renameTo; + + + + + private final Schema schema; + private final boolean ifExists; + private Schema renameTo; AlterSchemaImpl(Configuration configuration, Schema schema) { this(configuration, schema, false); @@ -113,8 +125,14 @@ final class AlterSchemaImpl extends AbstractRowCountQuery implements @Override public final void accept(Context ctx) { - ctx.start(ALTER_SCHEMA_SCHEMA) - .visit(K_ALTER_SCHEMA); + ctx.start(ALTER_SCHEMA_SCHEMA); + + boolean supportRename = false; + + if (supportRename) + ctx.visit(K_RENAME).sql(' ').visit(K_SCHEMA); + else + ctx.visit(K_ALTER_SCHEMA); if (ifExists) ctx.sql(' ').visit(K_IF_EXISTS); @@ -129,7 +147,7 @@ final class AlterSchemaImpl extends AbstractRowCountQuery implements ctx.start(ALTER_SCHEMA_RENAME) .qualify(false) - .visit(K_RENAME_TO).sql(' ').visit(renameTo) + .visit(supportRename ? K_TO : K_RENAME_TO).sql(' ').visit(renameTo) .qualify(qualify) .end(ALTER_SCHEMA_RENAME); } diff --git a/jOOQ/src/main/java/org/jooq/impl/AlterTableImpl.java b/jOOQ/src/main/java/org/jooq/impl/AlterTableImpl.java index 2dd1cd0508..6b4c6e7afe 100644 --- a/jOOQ/src/main/java/org/jooq/impl/AlterTableImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/AlterTableImpl.java @@ -1480,8 +1480,14 @@ final class AlterTableImpl extends AbstractRowCountQuery implements break; } - ctx.sql(' ') - .qualify(false) + + + + + + ctx.sql(' '); + + ctx.qualify(false) .visit(alterColumn) .qualify(true); @@ -1594,6 +1600,11 @@ final class AlterTableImpl extends AbstractRowCountQuery implements } } + + + + + ctx.end(ALTER_TABLE_ALTER); } else if (dropColumns != null) { diff --git a/jOOQ/src/main/java/org/jooq/impl/ConstraintImpl.java b/jOOQ/src/main/java/org/jooq/impl/ConstraintImpl.java index 6293603d0e..2f84378c9f 100644 --- a/jOOQ/src/main/java/org/jooq/impl/ConstraintImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/ConstraintImpl.java @@ -42,6 +42,7 @@ import static org.jooq.Clause.CONSTRAINT; // ... // ... // ... +// ... import static org.jooq.impl.ConstraintImpl.Action.CASCADE; import static org.jooq.impl.ConstraintImpl.Action.NO_ACTION; import static org.jooq.impl.ConstraintImpl.Action.RESTRICT; diff --git a/jOOQ/src/main/java/org/jooq/impl/XMLTable.java b/jOOQ/src/main/java/org/jooq/impl/XMLTable.java index 9e8fe93625..b2f9d8e8fd 100644 --- a/jOOQ/src/main/java/org/jooq/impl/XMLTable.java +++ b/jOOQ/src/main/java/org/jooq/impl/XMLTable.java @@ -37,6 +37,7 @@ */ package org.jooq.impl; +// ... // ... import static org.jooq.conf.ParamType.INLINED; import static org.jooq.impl.DSL.cast; @@ -320,6 +321,17 @@ implements else if (passingMechanism == BY_VALUE) ctx.sql(' ').visit(K_BY).sql(' ').visit(K_VALUE); + + + + + + + + + + + ctx.sql(' ').visit(passing); } @@ -358,6 +370,10 @@ implements if (path != null) ctx.sql(' ').visit(K_PATH).sql(' ').visit(inline(path)); + + + + } } }