Получение неправильного количества записей из базы данных DAO jet
Я пытаюсь изменить какой-то старый устаревший код VB6, который использует базу данных DAO Jet.
Проблема заключается в свойстве RecordCount набора записей.
База данных содержит 17953 записи.
Код делает MoveFirst и MoveLast, которые должны установить RecordCount, но свойство RecordCount возвращает только 17855 (98 коротких)
Затем код загружает все записи 17953 в ListView, поэтому все записи доступны и правильно загружаются в Listview, но даже тогда RecordCount все равно возвращает только 17855 !
Есть ли какой-нибудь другой способ получить RecordCount, чтобы быть правильным?
Что я уже пробовал:
Упрощенный код выглядит примерно так.
Дим ДСИ как Дао.Записей
Set Dsi = Dbs.OpenRecordset(tblMessages, dbOpenTable)
...
Dsi.MoveLast
Dsi.MoveFirst
...
- Простая петля
Делайте это до тех пор, пока Dsi.EOF
(загрузить запись в ListView)
ДСИ.Метод MoveNext
Петля
...
F-ES Sitecore
Если вам нужно получить доступ ко всем записям, то используйте курсор на стороне клиента, чтобы вам не нужно было movedlast\movefirst. Что касается ваших отсутствующих записей, сбросьте идентификаторы или что-то еще в файл\журнал, чтобы определить, какие записи отсутствуют, и посмотреть, можете ли вы увидеть какую-либо общую ссылку.