Java 如何使用JPA有条件地删除记录?
我的数据库表中有以下数据 一,myname@email.com2323Java 如何使用JPA有条件地删除记录?,java,jpa,Java,Jpa,我的数据库表中有以下数据 一,myname@email.com2323 2.myname@email.com3432 3.myname2@gmail.com4433 我想删除表中的所有记录,其中email==myname@email.com 下面是我的EJBQL-我不知道哪里出了问题,但查询不起作用 Query query = em.createQuery("DELETE FROM ResetPasswordEntity r WHERE r.email=:email"); query.setPa
2.myname@email.com3432
3.myname2@gmail.com4433 我想删除表中的所有记录,其中
email==myname@email.com
下面是我的EJBQL-我不知道哪里出了问题,但查询不起作用
Query query = em.createQuery("DELETE FROM ResetPasswordEntity r WHERE r.email=:email");
query.setParameter("email", email);
这个查询是正确的。我缺少一行代码。这是为了那些可能面临这一问题的人的利益
query.executeUpdate();
这个查询是正确的。我缺少一行代码。这是为了那些可能面临这一问题的人的利益
query.executeUpdate();
您真的在使用ejbql吗?也许你是指JPQL?如果是这样,请记住,在使用批删除操作时,级联行为将不会应用(尽管
cascade=delete
),您好,谢谢您的回复。ejbql和jpql之间的区别是什么?ejbql基本上起源于旧时代(J2EE),当JPA规范更成熟时,它被JPA QL所取代。你真的在使用ejbql吗?也许你是指JPQL?如果是这样,请记住,在使用批删除操作时,级联行为将不会应用(尽管cascade=delete
),您好,谢谢您的回复。ejbql和jpql之间的区别是什么?ejbql基本上来自旧时代(J2EE),当JPA规范更成熟时,它被jpaql所取代。