Skip to content

Commit

Permalink
[#8042] ALTER TABLE .. RENAME TO .. should fully qualify tables if su…
Browse files Browse the repository at this point in the history
…pported by the database
  • Loading branch information
lukaseder committed Jan 21, 2019
1 parent 2771a37 commit 1fbdf45
Showing 1 changed file with 15 additions and 4 deletions.
19 changes: 15 additions & 4 deletions jOOQ/src/main/java/org/jooq/impl/AlterTableImpl.java
Original file line number Diff line number Diff line change
Expand Up @@ -183,6 +183,7 @@ final class AlterTableImpl extends AbstractQuery implements
private static final EnumSet<SQLDialect> NO_SUPPORT_IF_EXISTS = EnumSet.of(CUBRID, DERBY, FIREBIRD, MARIADB);
private static final EnumSet<SQLDialect> NO_SUPPORT_IF_EXISTS_COLUMN = EnumSet.of(CUBRID, DERBY, FIREBIRD);
private static final EnumSet<SQLDialect> SUPPORT_RENAME_TABLE = EnumSet.of(DERBY);
private static final EnumSet<SQLDialect> NO_SUPPORT_RENAME_QUALIFIED_TABLE = EnumSet.of(POSTGRES);
private static final EnumSet<SQLDialect> NO_SUPPORT_ALTER_TYPE_AND_NULL = EnumSet.of(POSTGRES);
private static final EnumSet<SQLDialect> REQUIRE_REPEAT_ADD_ON_MULTI_ALTER = EnumSet.of(FIREBIRD, MARIADB, MYSQL);
private static final EnumSet<SQLDialect> REQUIRE_REPEAT_DROP_ON_MULTI_ALTER = EnumSet.of(FIREBIRD, MARIADB, MYSQL);
Expand Down Expand Up @@ -809,10 +810,20 @@ private final void accept1(Context<?> ctx) {
ctx.visit(K_COMMENT).sql(' ').visit(comment);
}
else if (renameTo != null) {
ctx.start(ALTER_TABLE_RENAME)
.visit(renameObject || renameTable ? K_TO : K_RENAME_TO).sql(' ')
.visit(renameTo)
.end(ALTER_TABLE_RENAME);
boolean qualify = ctx.qualify();

ctx.start(ALTER_TABLE_RENAME);

if (NO_SUPPORT_RENAME_QUALIFIED_TABLE.contains(ctx.family()))
ctx.qualify(false);

ctx.visit(renameObject || renameTable ? K_TO : K_RENAME_TO).sql(' ')
.visit(renameTo);

if (NO_SUPPORT_RENAME_QUALIFIED_TABLE.contains(ctx.family()))
ctx.qualify(qualify);

ctx.end(ALTER_TABLE_RENAME);
}
else if (renameColumn != null) {
boolean qualify = ctx.qualify();
Expand Down

0 comments on commit 1fbdf45

Please sign in to comment.