Search code examples
javamysqlsqljooqunsigned-integer

jOOQ Function generation of UNSIGNED BIGINT generates LONG rather than ULONG


I have a SQL (MySQL) function defined as:

FUNCTION `ifs_getPrimaryAddress`(aEntityId BIGINT unsigned, aTable VARCHAR(25), aResultType VARCHAR(10)) RETURNS varchar(500) 

Note the UNSIGNED bigint argument. When I generate the jOOQ, it creates the argument as a Long rather than a ULong:

public static Field<String> ifsGetprimaryaddress( Field<Long> aentityid, Field<String> atable, Field<String> aresulttype ) {...}

public void setAentityid(Field<Long> field) {
    setField(AENTITYID, field);
}

Shouldn't it generate as a ULong? I've modified the code manually to make it work.


Solution

  • This is a bug (https://github.com/jOOQ/jOOQ/issues/5202) in jOOQ 3.7.3.

    The current code generator implementation picks up the "unsigned" type specification only for table columns.