简体   繁体   English

在hibernate Spring java中删除数据库中的所有对象

[英]Delete all objects from database in hibernate Spring java

I want to delete all those rows from xyz table where id = 1 using hibernate spring. 我想使用hibernate spring从xyz表中删除所有那些id = 1的行。

I have tried following code but its not giving error but not deleting rows - 我试过以下代码,但它没有给出错误但没有删除行 -

 Session session = (Session) getEm().getDelegate();
 String sql ="Delete from xyz where id=:id" ;
SQLQuery query  = session.createSQLQuery(sql);
query.setParameter("id", "1");
int flg = query.executeUpdate();

Can you please help me to delete all rows using hibernate query. 你能帮我用hibernate查询删除所有行吗?

Try 尝试

query.setParameter("id", Long.valueOf(1));

if your entity is of type Long (which ideally should be). 如果您的实体是Long类型(理想情况下应该是)。

Reference: http://www.codejava.net/frameworks/hibernate/hibernate-basics-3-ways-to-delete-an-entity-from-the-datastore 参考: http//www.codejava.net/frameworks/hibernate/hibernate-basics-3-ways-to-delete-an-entity-from-the-datastore

Note: The link is just for your reference. 注意:该链接仅供您参考。

public void deleteById(Class clazz,Integer id) {
    String hql = "delete " + clazz.getName() + " where id = :id";
    Query q = session.createQuery(hql).setParameter("id", id);
    q.executeUpdate();
}

Try wrapping your code within a transaction like this: 尝试在这样的事务中包装代码:

Session session = (Session) getEm().getDelegate();
Transaction tx = session.beginTransaction();
String sql ="Delete from xyz where id=:id" ;
SQLQuery query  = session.createSQLQuery(sql);
query.setParameter("id", "1");
int flg = query.executeUpdate();
tx.commit();

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 如何在 Java/Spring/Hibernate 中从数据库中删除实体并将克隆存储在不同的数据库表中 - How to Delete Entity from Database and Store a Clone in a Different Database Table in Java/Spring/Hibernate 使用Java,Hibernate和servlet从数据库中删除行 - Delete row from database with Java, Hibernate and servlet 如何使用Hibernate \\ Spring Data将json转换为java对象数据并保存到数据库中? - How to convert from json into java objects data and save into database using Hibernate\Spring Data? Java-Spring-Hibernate从数据库中提取1000个对象需要很长时间 - Java - Spring - Hibernate extracting 1000 of objects from Database takes long time Spring / Hibernate截断/删除表中的所有行 - 事务问题 - Spring/Hibernate Truncate/Delete all rows from a table - Transaction issues 如何通过Hibernate从数据库中删除行及其所有引用? - How to delete a row & all its references from the database through Hibernate? 将数据从CSV加载到mySQL数据库Java + hibernate + spring - Load data from CSV to mySQL database Java+hibernate+spring Java Spring boot hibernate 删除级联数据 - Java Spring boot hibernate delete cascade data 在Java Spring Hibernate中初始化对象的集合 - Initialize collection of objects in Java Spring Hibernate 使用 Ajax 从数据库 mysql 中删除图像(使用 Spring MVC+Hibernate) - Delete image with Ajax from database mysql (using Spring MVC+Hibernate)
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM