Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

как подгружать данные постепенно? [D2005, XP]


kotenok ©   (2007-05-25 01:13:00) 

Привет!
делаю запрос select * from table? загужает всютаблицу, а нужно загражать по мере прокручивания dbgrid

как это выполнить?

в нете найти не удалось..


Desdechado   (2007-05-25 11:27:00) [1]

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


Anatoly Podgoretsky   (2007-05-25 10:19:00) [2]

> kotenok  (25.05.2007 10:02:05)  [5]

Тип курсора какой.
Правда база странная, с ней что угодно может быть.


kotenok   (2007-05-25 10:02:00) [3]


> А СУБД какая?


mysql

в adquery (которым пользуюсь) есть свойство fetchoptions (принимает значения: all, ondemand, exactrecsmax, manual) которое этим управляет, это единственное что удалось найти в инете, но никак не получается, все равно таблица грузится полностью, только после полной загрузки отображается..

сервер медленный и по инету, вся таблица грузится 30+ мб


Loginov Dmitry   (2007-05-25 08:46:00) [4]

> делаю запрос select * from table? загужает всютаблицу, а
> нужно загражать по мере прокручивания dbgrid


А СУБД какая?
Некоторые компоненты по такому принципу и работают, например, TIBDataSet (TpFIBDataSet)


pirate   (2007-05-25 08:18:00) [5]

Согласен. Можно кстати, если объем большой или сервер далеко и медленный, разбить запрос на множество субзапросов и поместить это дело в отдельный поток.

Но, следует помнить, что по воробьям из пушки не стреляют.


Kostafey   (2007-05-25 02:26:00) [6]

Можно сделать условие на загузку диапазона записей, например по их id или дате в SQL.
Но обращатся к серверу периодически по мере скроллига dbgrid - это как-то...
действительно объемы данных столь велики ?


Германн   (2007-05-25 01:44:00) [7]


> kotenok   (25.05.07 01:13)
>
> Привет!
> делаю запрос select * from table? загужает всютаблицу, а
> нужно загражать по мере прокручивания dbgrid
>

А "небо в алмазах" не нужно?
:)
Умерь аппетиты или сформулируй задачу. Имхо.


Наверх

Титульная страница Поиск, карта сайта Написать письмо