Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.09.19;
Скачать: [xml.tar.bz2];

Вниз

Странное поведение RecordCount   Найти похожие ветки 

 
Piter ©   (2004-08-21 14:54) [0]

Вот тут в Help"е:

If the result set is to return 100 rows, RecordCount will only be 100 after all the records have been visited.  That is, after looking at the first record, RecordCount is 1, and so forth

А почему? Глупости какие-то...

Приходится делать Last, чтобы узнать количество записей.
Или сначала делать SELECT Count(*)..., а уж потом SELECT *..., что, конечно, не эффективно...


 
Sandman25 ©   (2004-08-21 14:57) [1]

Все-таки чем не нравится Last? Точнее, какое поведение хотелось бы? Чтобы select count(*) не выполнялся, все данные на клиента не грузились, однако откуда-то было бы известно число записей? Мистицизмом увлекаемся? :)


 
Sergey_Masloff   (2004-08-21 15:04) [2]

>Или сначала делать SELECT Count(*)..., а уж потом SELECT *..., >что, конечно, не эффективно...
Да, зафетчить пару миллионов записей конечно значительно эффективнее. Да и зачем тогда гигабитный эзернет и гигабайты оперативки? ;-))


 
Sandman25 ©   (2004-08-21 15:06) [3]

В общем, нужно отучать пользователя от автоматического показа количества записей. Захотел узнать, сколько их? Будь добр, нажми на кнопочку.


 
Piter ©   (2004-08-21 15:40) [4]

Sergey_Masloff   (21.08.04 15:04) [2]
Да, зафетчить пару миллионов записей конечно значительно эффективнее


все равно эти записи будут использоваться...

к тому же я меня локальная версия сервера...

Но дело вообще не в этом, почему RecordCount имеет такое несомненно странное поведение? С чем это связано?


 
Sergey_Masloff   (2004-08-21 15:44) [5]

RecordCount имеет самое что ни на есть естественное поведение - он показывает сколько В ДАННЫЙ МОМЕНТ записей доступно КЛИЕНТУ непосредственно, то есть находится в его локальном буфере.
 Миллион записей клиентом использоватьс не может. Не может использоваться даже 300 записей - глазами столько без ошибок не пересмотришь а значит задачи требующие этого должны решаться по-другому.


 
-SeM-   (2004-08-21 15:49) [6]

Piter ©   (21.08.04 15:40) [4]


> все равно эти записи будут использоваться...

Угу, одновременно ...

к тому же я меня локальная версия сервера...
/
Может быть временно

> Но дело вообще не в этом, почему RecordCount имеет такое
> несомненно странное поведение? С чем это связано?

Странное в чем? В том что возвращает кол-во отфетченых записей?
А что ему вернуть?

ЗЫ Может начать читать книгу с начала?


 
гуест   (2004-08-23 09:52) [7]

Версия делфи? какой компонент?
TDataSet в 5 делфи возвращает верное количество строк при любом их количестве. В хелпе ни у одного компонена, имеющего ланное свойство, не нашел строк про ограничение


 
Sergey13 ©   (2004-08-23 09:57) [8]

2 [7] гуест   (23.08.04 09:52)
Все на 5 делфу! Ура!


 
Piter ©   (2004-08-24 00:25) [9]

ну что же, я сам что ли придумал...


 
Кщд ©   (2004-08-24 06:03) [10]

гуест   (23.08.04 09:52) [7]
Delphi 5 Magic Edition?


 
roottim ©   (2004-08-24 09:33) [11]

>Или сначала делать SELECT Count(*)..., а уж потом SELECT *..., что, конечно, не эффективно...
усли есть PK(индексирован) можеш select count(pk_field)... в этом сл должен работать только индекс, что эффективно. А если нужны все записи (я так препологаяю для клиента форума), то нужно выкачивать с сервера все данные, тобиш Last, а иначе кто его знает, сколько их там :)



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

Форум: "Базы";
Текущий архив: 2004.09.19;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.038 c
14-1093943954
ИМХО
2004-08-31 13:19
2004.09.19
Эмиграция в США или Европу


11-1080746105
Неуловимый Джо
2004-03-31 19:15
2004.09.19
GradientPanel->caption


1-1094066952
lipskiy
2004-09-01 23:29
2004.09.19
TAnimate тормозит, что делать?


14-1094148392
SV
2004-09-02 22:06
2004.09.19
Тряхнуть стариной...


14-1093380584
Sanek_metaller
2004-08-25 00:49
2004.09.19
WarCraft на Battle.net





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский