2014-07-08 25 views
7

Korzystam z poniższej metody, aby usunąć zbiór obiektów na podstawie określonego warunku miejsca, ale w rzeczywistości liczba usuniętych obiektów może być mniejsza niż liczba przekazanych kolekcji. Jak uzyskać rzeczywistą liczbę usuniętych podmiotówJak uzyskać liczbę usuniętych obiektów

http://docs.spring.io/spring/docs/2.5.x/api/org/springframework/orm/hibernate3/HibernateTemplate.html#deleteAll(java.util.Collection)

+0

Czy COUNT z tą samą klauzulą ​​WHERE przed i po wykonaniu polecenia DELETE? –

+0

@DanTemple nie będzie działać z obciążonym serwerem DB –

+0

@ScaryWombat Tak, wystąpią opóźnienia w żądaniach, więc dane mogą nie być całkowicie dokładne w systemie o dużym natężeniu ruchu. Dlatego przedstawiam to jako komentarz, ze znakiem zapytania na końcu. W zależności od systemu jako całości może to być odpowiednie rozwiązanie. –

Odpowiedz

2

można zbudować kwerendę opartą na kluczach podstawowych DELETE FROM ... WHERE id IN (1, 2, 3) lub coś podobnego, a następnie użyć executeUpdate() metodę, która zwraca liczbę wierszy.

Powiązane problemy