У меня проблема с фрагментом кода, который генерируется (выводится) в неправильном формате и не запрошенной форме:
Я хотел создать запрос / sql с внешним ключом без «ALTER TABLE NameOfTab ADD», поэтому я использовал этот кусок кода:
DSL.constraint(DSL.name("fk_example"))
.foreignKey("id1","id2")
.references("referecnedTableName", "referencedColumn1", "referencedColumn2");
И здесь возникает проблема, потому что она возвращает в виде строки эту форму:
constraint "fk_example"
foreign key (
"id1",
"id2"
)
references "referecnedTableName" (
"referencedColumn1",
"referencedColumn2"
)
Ожидаемый результат:
constraint fk_example foreign key (id1, id2)
references referecnedTableName (referencedColumn1, referencedColumn2)
Нечто похожее в правильном формате делает таблицу ALTER:
ctx.alterTable(tableName)
.add(
DSL.constraint(DSL.name("fk_example"))
.foreignKey("id1","id2")
.references("referecnedTableName","referencedColumn1","referencedColumn2"))
.getSQL(ParamType.INLINED));
Но он возвращает его с "alter table t3 add ...", и я не хочу часть "alter table".