Chcę usunąć z tabeli niektóre wpisy z określonymi identyfikatorami. Chcę poznać składnię tego żądania:Hibernate 4.1.11 hql usuń zapytanie z gdzie na liście
delete from table where id in list_of_ids
w hql.
Chcę usunąć z tabeli niektóre wpisy z określonymi identyfikatorami. Chcę poznać składnię tego żądania:Hibernate 4.1.11 hql usuń zapytanie z gdzie na liście
delete from table where id in list_of_ids
w hql.
Co delete from Table as table where id="value"
W powyższym przypadku
Tabela - klasa Pojo
stół - Baza Nazwa tabeli
użytkowania tego
Query qry = session.createQuery(delete from Pojo where pojo.property in (:bindParameter);
qry.setParameter("bindParameter", list);
Należy zwrócić uwagę na to wyrażenie SQL, jeśli lista jest pusta.
Zakładając id tabeli jest typu Long, prawidłowy sposób, aby wykonać kasowanie jest następujący:
List<Long> ids = new ArrayList<Long>();
ids.add(1L);
ids.add(2L);
Query q = session.createQuery("DELETE FROM YourEntityName ye WHERE ye.id IN (:list)");
q.setParameterList("list", ids);
q.executeUpdate();
dzięki ale nie mam pojedynczą wartość Mam listę identyfikatorów Chcę usunąć cała tabela z identyfikatorem na tej liście identyfikatorów –
Masz więcej niż jeden identyfikator, gdziekolwiek się pojawiłeś musisz usunąć cały rekord w prawo – kark
tak, chcę, aby odpowiednik w hql tego "usunąć z tabeli, gdzie id IN (.. .) " –