gpt4 book ai didi

java - JPA 删除查询不起作用

转载 作者:行者123 更新时间:2023-11-29 08:41:18 25 4
gpt4 key购买 nike

嗯,我不明白为什么我的代码不起作用。有人可以看看吗。它不提供任何错误消息,但不会删除客户。其他方法运行良好(getCustomerbyId、getAllCustomers 等)谢谢

public void deleteCustomerById(long id) {
EntityManager em = null;
try {
em = JpaUtil.getFactory().createEntityManager();
em.getTransaction().begin();
Query query = em.createQuery("Delete from Customer c where c.id = :id");
query.setParameter("id", id);
em.getTransaction().commit();
} finally {
JpaUtil.closeQuietly(em);
}
}

最佳答案

您需要执行查询才能对数据库产生 SQL 问题;在这种情况下,您需要使用 executeUpdate() 并获取修改后的行数来验证某些内容是否已删除。

em.getTransaction().begin();
Query query = em.createQuery("Delete from Customer c where c.id = :id");
query.setParameter("id", id);
int rows = query.executeUpdate();
em.getTransaction().commit();

关于java - JPA 删除查询不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40062479/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com