【发布时间】:2021-03-06 01:49:28
【问题描述】:
我需要使用 JOOQ 将表名转换为对象标识符。在普通的 SQL 中,我会这样做:
'my_table'::regclass::oid
我找不到用于转换值的 DataType(它存在 PostgresDataType.OID,但不存在 PostgresDataType.REGCLASS 或类似的东西,也不推荐直接使用 PostgresDataType)。
我也玩过DSL.inline、DSL.val,但无法获得想要的输出。
更新
我意识到有一个 PostgresDSL.oid 返回 Field<Long> 并产生以下输出 "my_table".oid,但我没有表的引用(我有表名作为文本),所以它对我的无效用例。
有没有办法通过 JOOQ 将表名转换为 Postgres 对象标识符 (OID)?
【问题讨论】:
标签: sql postgresql jooq