1
我正在做一個連接查詢jOOQ,其中我必須將兩個表中的列別名保持爲唯一的列名稱。在jOOQ中保留別名字段的類型信息
有沒有辦法規避當我對列進行別名時發生的信息丟失?或者更好的方式來實現jOOQ風格的列名衝突的目標?
當我做的所有別名域,所有類型的信息丟失:
List<Field<?>> columns = factory.select().from(t1j).limit(0).fetch().getFields();
List<Field<?>> aliases = new LinkedList<Field<?>>();
for (Field f : columns) {
Field alias = Factory.fieldByName(t1j.getName(), f.getName())
.as(f.getName() + "_t1");
aliases.add(alias);
}
// columns.get(0).getType() == "class java.lang.String"
// aliases.get(0).getType() == "class java.lang.Object"
所以答案是:對於jooq 2.6,沒有答案;但對於jooq 3.0,有:) – helt
或多或少,是的:-)行級類型安全是JOOQ 3中最重要的功能添加 –