执行前重建查询
Rebuild Query before execution
我正在研究将 jOOQ 用作可配置 JDBC 后端的抽象层。一个必需的选项是非常特定的数据库,它支持 JDBC,但它具有不常见的 SQL 方言。我需要使用这个数据库,但我想继续使用通用的 DSL 和 API。例如,我对使用 DSLContext.executeUpdate 调用很感兴趣。
我了解如何通过实施 DefaultExecuteListener 解决一半的问题。但是还有另一半,我必须将 jOOQ 生成的一个语句翻译成另一个语句,由 DB 接受。我认为这个任务应该比 SQL 修改更容易通过使用 DSL 操作来实现。
是否可以在 ExecutionListener 早期步骤(例如'start')中访问 DSL 构造,将其分解并将新的 DSL 构造注入后续步骤?
我正在研究将 jOOQ 用作可配置 JDBC 后端的抽象层。一个必需的选项是非常特定的数据库,它支持 JDBC,但它具有不常见的 SQL 方言。我需要使用这个数据库,但我想继续使用通用的 DSL 和 API。例如,我对使用 DSLContext.executeUpdate 调用很感兴趣。
我了解如何通过实施 DefaultExecuteListener 解决一半的问题。但是还有另一半,我必须将 jOOQ 生成的一个语句翻译成另一个语句,由 DB 接受。我认为这个任务应该比 SQL 修改更容易通过使用 DSL 操作来实现。
是否可以在 ExecutionListener 早期步骤(例如'start')中访问 DSL 构造,将其分解并将新的 DSL 构造注入后续步骤?