HQL Delete Query hibernate
You could use HQL to delete data form the table and its almost same as native SQL query except in place on table and column name you have to use class name and its attribute name.
Note: This class is extension of previous tutorial. If you are interested to see full working example with all set up please refer this tutorial Hibernate One To Many Annotation Example
Please have java example below:
package com.javahonk; import org.hibernate.Query; import org.hibernate.Session; import org.hibernate.SessionFactory; import com.javahonk.util.HibernateUtil; public class DeleteQuery { static SessionFactory sf = HibernateUtil.getSessionFactory(); public static void main(String[] args) { Session session = sf.openSession(); session.beginTransaction(); System.out.println("Delete query example\n"); Query query = session.createQuery("delete Child " + "where childId = :childId"); query.setInteger("childId", 3); int noOfRowsDeleted = query.executeUpdate(); System.out.println("Total no of rows deleted: " +noOfRowsDeleted); session.getTransaction().commit(); session.close(); } }
Output:
For more information about HQL please read this hibernate official tutorial