0
我想要做的是:从数据库(使用Hibernate)如何将分离或持久实体更改为瞬态?
- 读取实体。
- 更改单个属性。
- 再次插入它作为具有新Id(主键)的新条目。
我试图插入分离的实体与空id,但它仍抱怨重复键值违反了唯一约束。
我想要做的是:从数据库(使用Hibernate)如何将分离或持久实体更改为瞬态?
我试图插入分离的实体与空id,但它仍抱怨重复键值违反了唯一约束。
您需要在从db读取实体后添加调用flush()
和evict()
会话,并且只有在做了任何更改之后 - 更改字段并将id设置为null。正如你没有做到这一点,你的实体仍然连接到会话上下文。还要检查重复的键值是否违反唯一约束例外,而不是连接另一个唯一键。