sql >> Base de Datos >  >> RDS >> PostgreSQL

Obtener resultados de la función Postgresql con valores de tabla con JOOQ

La forma correcta de llamar a funciones con valores de tabla desde jOOQ es usándolas en FROM cláusulas como se documenta en el manual página que has vinculado.

En tu caso, sería:

Result<TestFuncRecord> result =
DSL.using(configuration)
   .selectFrom(Routines.testFunc("xx", 10))
   .fetch();

O comenzando con jOOQ 3.6 también

Result<TestFuncRecord> result =
DSL.using(configuration)
   .selectFrom(Tables.TEST_FUNC("xx", 10))
   .fetch();

El generador de código jOOQ trata las funciones con valores de tabla como tablas ordinarias, no como rutinas. Esta es la razón por la que no debería haber ningún método en Routines que requiere una Configuration argumento.