sql >> Databasteknik >  >> RDS >> PostgreSQL

JOOQ forcerad typkodgenerering

element i din bör hänvisa till typ (användartyp) av din konverterare , inte till typ (databastyp). Så om du skriver detta:

<customTypes>
  <customType>
   <name>java.sql.Timestamp</name>
   <converter>com.plannow.jooq.converters.DateTimeConverter</converter>
  </customType>         
</customTypes>

Då registrerar du egentligen bara en Converter . Prova detta istället:

<customTypes>
  <customType>
   <name>org.joda.time.DateTime</name>
   <converter>com.plannow.jooq.converters.DateTimeConverter</converter>
  </customType>         
</customTypes>

Observera att din omvandlare också bör hantera null korrekt värden:

@Override
public DateTime from(Timestamp t)     {
    return t == null ? null : new DateTime(t);
}

@Override
public Timestamp to(DateTime u) {
    return u == null ? null : new Timestamp(u.getMillis());
}



  1. SQL Server Bygg om och omorganisera index

  2. UTC_TIME Exempel – MySQL

  3. Hur man återställer en trunkerad tabell

  4. MySQL:Total GROUP BY WITH ROLLUP nyfikenhet