Вниз
Скачать: CL | DM;

Глюки с RecordCount   Найти похожие ветки 

← →
Jdrm   (2002-12-11 11:18) [0]

Как заставить RecordCount возвращать число записей датасета? Если у меня таблица активная, но данные не отображаются то RecordCountвозвращает всего лишь 1! неужели нужно всегда ложить на форму какой нибудь DBGrid чтоб RecordCount хоть что нибудь возваращал, да и то не совсем коректно - положил я на форму DBGridсвязаный с нужным датасетом после чего RecordCount решил что записей в датасете 501 хотя их на самом деле 1048 и только переход на последнюю запись заставил RecordCount все таки вернуть нужный результат.


← →
Карелин Артем ©   (2002-12-11 11:22) [1]

Это опасно когда много записей. Делай FetchAll - поможет.


← →
sniknik ©   (2002-12-11 11:30) [2]

гораздо быстрее работает SELECT Count(*) AS nCol FROM .... если нужно только количество пользуйся им.


← →
Anatoly Podgoretsky ©   (2002-12-11 11:32) [3]

Это нормальное поведение, делай .Last, но потери времени могут быть огромными
Другое решение запрос теми же критериями


← →
Карелин Артем ©   (2002-12-11 11:38) [4]

>>Это нормальное поведение, делай .Last, но потери времени могут быть огромными
А вот если записей порядка миллиона, то это мазохизм над собой и компом :))


← →
LordOfSilence ©   (2002-12-11 11:44) [5]

Честно скажу, сам так никогда не пробовал, но...

Что если ExecuteOptions установить в eoAsyncFetch
и в дальнейшем использовать событие OnFetchProgress?
В обработчик этого события передаются как количество
уже переданных записей, так и общее их количество.

Кстати, вроде при таком подходе можно прикрутить
что-то вроде ProgressBar"a для индикации хода
длительного запроса.


← →
sniknik ©   (2002-12-11 12:09) [6]

LordOfSilence © (11.12.02 11:44)
замечательно получается, только вместо общего там тоже самое значение т.е. Progress = MaxProgress. Может это только для Access базы конечно.

Но на самом деле не для этого надо использовать, просто количество проще селектом, а через ExecuteOptions я сделал то о чем давно думал моментальную загрузку в грид и докачку в фоне, (вернее это так смотрится) как в Фоксе делается, команда Browse - не замечали? при любом размере таблици отображение моментальное.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.013 c
8-99208
****
2002-09-11 11:38
2002.12.30
В чем ошибка??


14-99257
vopros
2002-12-11 15:37
2002.12.30
Среди программистов


1-99179
OxOTHuK
2002-12-18 11:45
2002.12.30
Правильный поиск


14-99279
Оливейра
2002-12-08 22:14
2002.12.30
---|Ветка была без названия|---


3-99006
s_o
2002-12-10 15:57
2002.12.30
работа с базами данных




   Наверх