From 03a4ce68a48b73a8eb845b7938e00eaa01e25edb Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Tue, 9 Sep 2025 15:13:56 +0200 Subject: [PATCH] [jOOQ/jOOQ#19032] ALTER TABLE .. ADD FOREIGN KEY .. REFERENCES references unqualified table name when column is also added --- jOOQ/src/main/java/org/jooq/impl/AlterTableImpl.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/jOOQ/src/main/java/org/jooq/impl/AlterTableImpl.java b/jOOQ/src/main/java/org/jooq/impl/AlterTableImpl.java index 2df094a21b..35c52cb4a7 100644 --- a/jOOQ/src/main/java/org/jooq/impl/AlterTableImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/AlterTableImpl.java @@ -1345,13 +1345,16 @@ implements } TableElement part = add.get(i); - ctx.qualify(false, c -> c.visit(Tools.uncollate(part))); + // [#19032] We already use DATA_CONSTRAINT_REFERENCE to declare qualified constraint references, + // so constraints shouldn't be unqualified here. if (part instanceof Field f) { - ctx.sql(' '); + ctx.qualify(false, c -> c.visit(Tools.uncollate(part))).sql(' '); toSQLDDLTypeDeclarationForAddition(ctx, table, f.getDataType()); CreateTableImpl.acceptColumnComment(ctx, f); } + else + ctx.visit(Tools.uncollate(part)); } if (indent)