gpt4 book ai didi

java - 从对象 jooq 3.9.0 和 3.9.1 生成 DDL

转载 作者:行者123 更新时间:2023-11-30 10:32:19 25 4
gpt4 key购买 nike

我目前正在使用 jooq,对于我的单元测试,我使用内存中的 H2 DB,我在其中使用 jooq 生成的元数据创建表,如中所述 https://www.jooq.org/doc/3.9/manual/sql-building/ddl-statements/generating-ddl/

在 3.8.4 中它工作正常,但在升级到 3.9.0(或 3.9.1)时出现错误:

Queries queries = dslContext.ddl(DefaultSchema.DEFAULT_SCHEMA);
for (Query query : queries.queries()) {
query.execute();
}

错误:

java.lang.ArrayIndexOutOfBoundsException: -1

at org.jooq.impl.SchemaImpl.<init>(SchemaImpl.java:78)
at org.jooq.impl.DSL.schema(DSL.java:7199)
at org.jooq.impl.DefaultDSLContext.createSchema(DefaultDSLContext.java:2605)
at org.jooq.impl.DefaultDSLContext.createSchema(DefaultDSLContext.java:2600)
at org.jooq.impl.DDL.queries(DDL.java:112)
at org.jooq.impl.DefaultDSLContext.ddl(DefaultDSLContext.java:2487)
at org.jooq.impl.DefaultDSLContext.ddl(DefaultDSLContext.java:2482)

最佳答案

感谢您的报告。这是 jOOQ 3.9.0 和 3.9.1 中的错误。我创建了 https://github.com/jOOQ/jOOQ/issues/5979为此。

解决方法是在此处排除架构生成:

Queries queries = dslContext.ddl(DefaultSchema.DEFAULT_SCHEMA, DDLFlag.TABLE, ...);

关于java - 从对象 jooq 3.9.0 和 3.9.1 生成 DDL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42754716/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com