gpt4 book ai didi

java - JOOQ:返回自动递增的 key ?

转载 作者:可可西里 更新时间:2023-11-01 08:20:56 26 4
gpt4 key购买 nike

给定:

CREATE TABLE foo (id BIGINT NOT NULL AUTO_INCREMENT, PRIMARY KEY(id));

我想调用:INSERT INTO foo VALUES()并取回生成的 key 。我尝试按照 jOOQ insert query with returning generated keys 中的建议进行操作但是当我调用时:

RoomsRecord record = db.insertInto(foo, Collections<Field<?>>emptyList()).returning(foo.ID).fetchOne();

JOOQ 返回 null 而不是生成的键。这是错误吗?

最佳答案

这似乎是 FieldMapsForInsert.isExecutable() 中的错误。它将上述查询标记为不可执行,但它在 MySQL 下是合法的。我提交了 https://github.com/jOOQ/jOOQ/issues/20

您可以将 NULL 作为 workaround 插入.此外,您必须配置 JOOQ 以生成表“关系”,否则 returning() 将看不到主键的存在并返回 null。

<configuration>
<generator>
<generate>
<relations>true</relations>
</generate>
</generator>
</configuration>

关于java - JOOQ:返回自动递增的 key ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11056246/

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