【问题标题】:Eclipselink delete and create leads to unique constraint exceptionEclipselink删除和创建导致唯一约束异常
【发布时间】:2011-09-03 06:32:50
【问题描述】:

我有一个具有自定义设置主键的实体。 首先我删除了这个实体,然后我用相同的主键重新创建了这个实体。 这会导致提交/刷新时出现唯一约束异常。 作为一种解决方法,我在删除和创建操作之间调用刷新。 有没有办法正确/更好地做这些事情,即不调用实体管理器上的刷新?

谢谢, 曼弗雷德

【问题讨论】:

    标签: eclipselink entitymanager


    【解决方案1】:

    em.remove( yourEntity ) 命令将预订您的实体以从持久性上下文中删除,然后从数据库中删除,但它不会立即生效。我可以想象,当您持久化新实体时,还没有从持久化上下文和数据库中删除。

    您可以尝试在 remove() 命令后使用自定义 JPQL 查询(如 "DELETE FROM YourEntity ye WHERE ye.primary1 = :primary1 AND ye.primary2 = :primary2... whatever;")删除此实体。我假设这会立即从持久性上下文中删除您的实体,但我不确定。试一试,让我们知道:)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-08-05
      • 1970-01-01
      • 2018-08-14
      • 2012-09-02
      • 2017-05-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多