sql >> Database teknologi >  >> RDS >> PostgreSQL

Hvordan får man en rækkerepræsentation af en genereret tabel?

Manglende funktion i jOOQ 3.11

Der ser ud til at mangle en funktion i jOOQ-kodegeneratoren, en genereret Table.fieldsRow() tilsidesat metode, der giver en mere snæver, kovariant Row[N]<...> returtype. Jeg har oprettet en funktionsanmodning til dette, der skal implementeres i jOOQ 3.12:https:// github.com/jOOQ/jOOQ/issues/7809

Der mangler også en overbelastet DSL.rowField(RowN) metode:https://github.com/jOOQ/jOOQ/issues/7810

Løsning, angiv kolonner eksplicit

Dette er den mest oplagte løsning, som du naturligvis vil undgå:At angive alle kolonnenavnene eksplicit:

row(pmu.COL1, pmu.COL2, ..., pmu.COLN)

Løsning, brug genererede poster

Der er allerede en sådan genereret metode i genererede poster. Som en løsning kan du bruge

new ProjectMembersUsersRecord().fieldsRow();

Løsning, udvid kodegeneratoren

Du kan implementere #7809 selv allerede nu ved at udvide JavaGenerator med en brugerdefineret kodesektion:

https://www.jooq.org/doc /latest/manual/code-generation/codegen-custom-code




  1. Hibernate opretter ikke tabel i databasen

  2. PyMySQL ved hjælp af localhost vs socket usammenhængende adfærd

  3. Hvordan kan jeg se/ændre indstillingerne for timeout for MySQL-forbindelsen?

  4. AssertionError:databaseforbindelse er ikke indstillet til UTC