Форум программистов, компьютерный форум, киберфорум
Базы данных
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
0 / 0 / 1
Регистрация: 30.09.2006
Сообщений: 269
1

MyRecordset.RecordCount ВОЗВРАЩАЕТ -1?!!

10.05.2007, 18:18. Показов 1586. Ответов 12
Метки нет (Все метки)

Хочу получить количество записей в recordSet'e,
а это свойство выдает -1
В чем грабли?
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.05.2007, 18:18
Ответы с готовыми решениями:

RecordCount?
Как получить количество записей в запросе не используя Recordcount т.к. он возвращает -1:...

свойство RecordCount
Ребята как сделать чтобы Recordset нормально возвращал свойство RecordCount. Или как по-другому...

ADODB RecordCount не работает, возвращает (-1)
Dim rSt As ADODB.Recordset Dim DB As Connection Set DB = CurrentProject.Connection ...

не правильно работает RecordCount
1. после не известных действий пользователя значение, возвращаемое RecordCount для Recordseta,...

12
0 / 0 / 3
Регистрация: 27.03.2012
Сообщений: 2
10.05.2007, 18:34 2
Грабли в том, что сначала надо сделать MoveLast
0
0 / 0 / 0
Регистрация: 20.03.2007
Сообщений: 21
11.05.2007, 19:15 3
Свойство RecordCount объекта Recordset всегда равно -1, если он сделан на основе сквозного запроса. Ничего с этим не поделаешь.
0
0 / 0 / 1
Регистрация: 30.09.2006
Сообщений: 269
11.05.2007, 19:21  [ТС] 4
Ну и как можно опрделить количество записей в рекордсете?
0
0 / 0 / 3
Регистрация: 27.03.2012
Сообщений: 2
11.05.2007, 20:59 5
MyRecordset.Open ...
If MyRecordset.EOF Then
Кол-во записей: 0
Else
MyRecordset.MoveLast
Кол-во записей: MyRecordset.RecordCount
End If
0
0 / 0 / 0
Регистрация: 26.03.2007
Сообщений: 238
13.05.2007, 11:36 6
Надо ещё посмотреть предварительно, где курсор установлен. Должен на клиенте.
0
3 / 3 / 0
Регистрация: 15.03.2007
Сообщений: 63
15.05.2007, 14:19 7
Самый крутой способ пробежаться циклом до
rs.EOF
и подсчитать кол-во записей

при других вариантах и большом кол-ве записей могут быть ошибки
0
0 / 0 / 0
Регистрация: 16.05.2007
Сообщений: 3
16.05.2007, 21:13 8
Esli CursorType Recordseta Obiavlen Tak
rec.CursorType = adOpenStatic Or adOpenKeyset
Togda ti smozesh' polu4ht' RecordCount
0
ger
20.05.2007, 13:26 9
Все просто:

Dim num1 as long 'Количество записей
Dim num2 as long 'Номер текущей записи
Data1.Recordset.MoveLast
num1 = Data1.Recordset.RecordCount
num2 = Data1.Recordset.AbsolutePosition + 1

Удачи!
0 / 0 / 0
Регистрация: 18.05.2007
Сообщений: 25
20.05.2007, 13:47 10
я согласен с ArtP в таблице могут быть удалены записи и тогда MOVELAST выдаст не истинное
значение количества записей а максимальный номер
поледней записи я на эти грабли уже наступал.
по зтой же причине отказался от счетчика.
0
ger
20.05.2007, 14:59 11
Я использовал SQL запрос для рекордсета.
По моему там пустых записей не может быть.
Я же не спрашиваю - вывести ''.
Вроде считает все правильно.
Правда среди десятков тысяч мог и ошибиться, но не из-за пустой записи...
0 / 0 / 0
Регистрация: 24.12.2007
Сообщений: 12
25.12.2007, 12:41 12
Необходимо правильно установить тип курсора и блокировку.
rs.LockType = 4
rs.CursorType= 2
rs.CursorLocation=3
B Count заработает.
0
msd
25.12.2007, 13:51 13
Кстати, в приаттаченных таблицах RecordCount тоже всегда -1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.12.2007, 13:51

Как в OpenRecordset RecordCount использовать запрос, написанный в VB
Здравствуйте! Подскажите пожалуйста, как в OpenRecordset RecordCount использовать запрос,...

Как вернуть в запросе значение по умолчанию, если SELECT возвращает NULL или ничего не возвращает?
Добрый день! Например я хочу чтобы донное выражение возвращало мне 0 или скажем 1, если...

При попытке выполнения строчки myRecordset = myRecordset.NextRecordset() возникает ошибка
Хранимая процедура возвращает два рекордсета. Необходимо пройтись по обоим рекордсетам. Но при...

RecordCount возвращает -1
Доброго дня! И раньше сталкивался с таким но не найдя ничего в гугле делал по другому. Вот...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.