JPA Entity Bulk删除无法正常工作

时间:2013-05-01 11:10:01

标签: java jpa

我有三个相关实体

public class EntityA
{
private Long id;
}


public class EntityB
{
private Long id;
private EntityA entityA;
private EntityC entityC;

}

public class EntityC
{
private Long id;
}

Query query = persistenceManager.createNamedQuery("DELETE FROM EntityB a WHERE a.entityA = :entityA AND a.entityC.id in :entityCList"); query.setParameter("entityA", entityAObj); query.setParameter("entityCList", entityCList); query.executeUpdate();

我正在使用MySQL数据库。参数:entityCListArrayList的{​​{1}},即entityC ids,而List<Long> entityCList:entityA的对象。

当我运行上面的删除查询时,记录没有从数据库中删除,也没有抛出异常。查询可能有什么问题。

1 个答案:

答案 0 :(得分:1)

SQL生成了什么?

尝试将entityC与EntityC对象列表进行比较,而不是ID。

或者,尝试使用子选择,而不是连接。