jooq 从 sql 文件插入

jooq insert from sql file

我有我的 insert.sql 文件,里面有 10 多行命令 INSERT INTO

然后我尝试使用 jooq

插入它
String insertSql = mustacheEngine.getMustacheSource("insert.sql");
dslContext.execute(insertSql);

但是我得到这个错误

Cannot insert multiple commands into a prepared statement

我该如何解决?我使用真实的数据库和连接

Vertica 不支持准备好的语句中的多个语句,默认情况下 jOOQ 总是在幕后创建一个 JDBC PreparedStatement,请参阅:https://www.jooq.org/doc/latest/manual/sql-execution/statement-type/

但是,您可以告诉 jOOQ 使用静态语句来代替 (JDBC Statement),which should support multiple statements in Vertica.

DSLContext ctx = DSL.using(connection, SQLDialect.VERTICA,
  new Settings().withStatementType(StatementType.STATIC_STATEMENT));
ctx.execute(insertSql);