Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Delete record into table and get the number of deleted rows

I want to create a SQL query which deletes records older than 1 hour:

@Override
    public List<Cvvs> deleteOldRecordsByDate(LocalDateTime created_at) throws Exception {

        String hql = "delete from " + Records.class.getName() + " e where e.created_at <= :created_at";
        TypedQuery<Records> query = entityManager.createQuery(hql, Records.class).setParameter("created_at", created_at);
        List<Records> records = query.getResultList();
        return records;
    }

But how I can get the number of the deleted records?

like image 622
Peter Penzov Avatar asked Nov 17 '25 09:11

Peter Penzov


1 Answers

You use the executeUpdate on bulk updates/deletes and its return value is the number of affected rows:

int records = query.executeUpdate();
like image 177
Maciej Kowalski Avatar answered Nov 20 '25 00:11

Maciej Kowalski