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

Вниз

Вопрос по RecordCount   Найти похожие ветки 

 
AlexeyMir   (2008-03-06 10:13) [0]

Подскажите пожалуйста, я использую IBQuery. Почему чтобы узнать правильное количество записей мне нужно перейти на последнюю запись выборки IBQuery1.Last, а потом уже выполнять IBQuery1.RecordCount?


 
Johnmen ©   (2008-03-06 10:15) [1]

Потому, что при выполнении запроса на клиента считывается только потребное ему количество записей. По мере потребности они докачиваются.
Об этом можно почитать в хелпах и доках.

ЗЫ
Кто использует RecordCount, тот ССЗБ.


 
DrPass ©   (2008-03-06 10:19) [2]


> Почему чтобы узнать правильное количество записей мне нужно
> перейти на последнюю запись выборки IBQuery1.Last, а потом
> уже выполнять IBQuery1.RecordCount?

Чтобы узнать правильное количество записей, нужно выполнить запрос select count(*) from..., а не использовать RecordCount


 
Sergey13 ©   (2008-03-06 10:30) [3]

> [0] AlexeyMir   (06.03.08 10:13)
> я использую IBQuery.

IBDataSet лучше.

> [2] DrPass ©   (06.03.08 10:19)
Это количество записей в БД, а не в датасете.

ИМХО можно юзать и то и это, но четко представляя как это работает и не основывая только на этом логику работы с данными.


 
DrPass ©   (2008-03-06 11:24) [4]


> Sergey13 ©   (06.03.08 10:30) [3]


> > [2] DrPass ©   (06.03.08 10:19)
> Это количество записей в БД, а не в датасете.

Естественно. Количество выфетченных записей в датасете может интересовать грид для корректного отображения скроллбара, но уж никак не прикладного программиста.


 
Sergey13 ©   (2008-03-06 11:32) [5]

> [4] DrPass ©   (06.03.08 11:24)

Я немного не к тому вел. Количество записей в датасете может не совпадать с количеством данных в БД (по тому же условию) в разные моменты времени. Особенно при многопользовательской работе.


 
DrPass ©   (2008-03-06 11:37) [6]


> Количество записей в датасете может не совпадать с количеством
> данных в БД (по тому же условию) в разные моменты времени

Нет, понятное дело, что к этому надо тоже с умом подходить - если такая проблема существует, разруливать транзакциями, чтобы select count(*) from видел только те же записи, что и соответствующий select fields from

А в некоторых случаях (например, если запрос тяжелый, а записей возвращает сравнительно немного) даже FetchAll + RecordCount будут наиболее правильным решением...



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

Форум: "Начинающим";
Текущий архив: 2008.03.30;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.049 c
2-1204322758
ajsek
2008-03-01 01:05
2008.03.30
webbrowser открывался на новых вкладках


15-1203344856
Dmitry S
2008-02-18 17:27
2008.03.30
Еще один идиотский вопрос:)


2-1204286904
TStas
2008-02-29 15:08
2008.03.30
Что возвращает WinExec?


15-1203166532
x.pro
2008-02-16 15:55
2008.03.30
Хостинг для БД


2-1204728129
nstur
2008-03-05 17:42
2008.03.30
Как подключить *.chm файл





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский