Полагаю, если вы посмотрите на созданные экземпляры, вы заметите, что вы получаете те же данные обратно.
Это произойдет, если адаптер БД не уверен, какие записи были прочитаны.
Самый простой способ сделать это - сделать так, чтобы адаптер DB пометил запись как прочитанную.Вы можете сделать это, добавив столбец индикатора в свою схему как одно решение, которое настроено на чтение или чтение.
Но, фактически, ваша проблема, скорее всего, без дополнительной информации, что вы перечитываете то жезаписывать каждую итерацию, и поэтому вам нужно использовать один из параметров для определения прочитанной записи.