删除Derby条目

时间:2013-01-23 13:48:58

标签: java jpa eclipselink derby

我使用JPA通过eclipse链接将数据添加到Derby DB,并且当存在重复的ID时。

我收到错误,运行时(带代码)可以简单地删除所有表条目。

每次调用程序时,我都不需要旧条目。

我试过

factory = Persistence.createEntityManagerFactory(PERSISTENCE_UNIT_NAME);
EntityManager entityManager = factory.createEntityManager();

entityManager.getTransaction().begin();

Query query = entityManager.createQuery("SELECT p FROM Job p ");

List resultList = query.getResultList();

for (Object result : resultList) {
    entityManager.remove(result);
}

entityManager.getTransaction().commit();
entityManager.close();

但是我之前使用的是查询而且我不想这样做我想要删除所有条目,而我之前并不关心它是什么。

2 个答案:

答案 0 :(得分:1)

每次应用程序启动时,您都可以在运行时使用SQL DELETE查询。如果你没有发布一些代码,我们就无法帮助。

编辑:

您可以在查询之前的某些先前事务或同一事务中执行以下查询:

int deletedCount = entityManager.createQuery("DELETE FROM Job").executeUpdate();

答案 1 :(得分:1)

您可以执行删除查询,也可以将持久性单元配置为在部署持久性单元时重新创建表。

请参阅, http://www.eclipse.org/eclipselink/documentation/2.4/jpa/extensions/p_ddl_generation.htm#BABHEJJI