gpt4 book ai didi

java - hibernate persist 尝试使用现有 id 创建对象失败

转载 作者:行者123 更新时间:2023-11-29 13:32:51 25 4
gpt4 key购买 nike

我正在使用 spring-hibernate-postgres。我有一张 table 说'some_entity'。它已经包含一些记录。

我有一个程序试图创建新的 SomeEntity 对象。我用适当的属性填充该对象,然后调用它的 persist() 方法。

在日志中,我看到 hibernate 正在尝试从表序列中获取 nextVal()。但是,我的 postgres 返回的 nextval 与 some_entity 表第二行的 id 相同。所以,我的 hibernate 尝试用那个 id 创建行。因此我的 persist() 因 hibernate 约束违反异常而失败。

可能是我没有正确表述问题。我希望有人已经遇到过这个问题并有解决方案。

谢谢

最佳答案

我遇到了这个问题。我通过执行 sql 解决了这个问题,它在应用程序启动时更新序列

ALTER SEQUENCE names_id_seq RESTART WITH currentId;

,我从哪里得到currentId

SELECT currval('names_id_seq');

关于java - hibernate persist 尝试使用现有 id 创建对象失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19696371/

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