diff --git a/jOOQ-extensions/src/main/java/org/jooq/extensions/ddl/DDLDatabaseInitializer.java b/jOOQ-extensions/src/main/java/org/jooq/extensions/ddl/DDLDatabaseInitializer.java index 6a65ea862d..ff34fb0d13 100644 --- a/jOOQ-extensions/src/main/java/org/jooq/extensions/ddl/DDLDatabaseInitializer.java +++ b/jOOQ-extensions/src/main/java/org/jooq/extensions/ddl/DDLDatabaseInitializer.java @@ -115,24 +115,27 @@ public final class DDLDatabaseInitializer { boolean changed = false; for (int i = 0; i < parts.length; i++) { + Name replacement = parts[i]; switch (nameCase) { case LOWER_IF_UNQUOTED: if (parts[i].quoted() == Quoted.QUOTED) break; case LOWER: - parts[i] = DSL.quotedName(parts[i].first().toLowerCase(locale)); - changed = true; + replacement = DSL.quotedName(parts[i].first().toLowerCase(locale)); break; case UPPER_IF_UNQUOTED: if (parts[i].quoted() == Quoted.QUOTED) break; case UPPER: - parts[i] = DSL.quotedName(parts[i].first().toUpperCase(locale)); - changed = true; + replacement = DSL.quotedName(parts[i].first().toUpperCase(locale)); break; default: break; } + if (!replacement.equals(parts[i])) { + parts[i] = replacement; + changed = true; + } } if (changed)