首页 > 解决方案 > 使用 jOOQ 获取表列表

问题描述

我一直在 jOOQ 中使用Schema.getTables()方法来获取我的模式中的表列表,但是今天我发现该方法返回的是我们执行 jOOQ 代码生成时存在的表列表,而不是那些存在于这个时间点。

我的具体用例是我们随着时间的推移创建表(自动分区),我们的 Java 服务对它们进行一些操作。

jOOQ 中有没有办法从数据库中获取当前的表列表?

我可以求助于information_schema.tables直接查询,但如果有可用的方法,我更愿意重用 jOOQ 中的方法。

标签: postgresqljooq

解决方案


您可以通过 jOOQ 的 API 访问您的运行时元信息DSLContext.meta(),它是 jOOQ 对 JDBC 的DatabaseMetaData.


推荐阅读