【发布时间】:2014-09-09 12:58:47
【问题描述】:
我目前正在评估 jOOQ。我们在创建连接语句时遇到问题,如下所示:
create.select( )
.from( TABLEA, TABLEB)
.where(TABLEA.ID.equal( TABLEB.TABLEA_ID ));
因为类型不匹配。在(Oracle 11g)数据库中,TABLEA 是 NUMBER(22,0),但 TABLEB.TABLEA_ID 是 NUMBER(7,0)。
因此 jOOQ 为第一个属性生成一个 BigInteger 字段,但为后者生成一个 Integer 字段。
所以我尝试使用以下 xml 生成所有 NUMBER(.*,0) 和 BigInteger:
<forcedTypes>
<forcedType>
<name>DECIMAL_INTEGER</name>
<expression>.*</expression>
<types>NUMBER(.*,0)</types>
</forcedType>
</forcedTypes>
</database>
但这不起作用。我仍然有以Integer 为类型的字段。那么,除了更改表格列类型之外,我还能做些什么呢?
【问题讨论】: