![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Zapolnenie DBGrid. [D6, IB6.x]
KPOT © (2002-11-04 18:00:00)select vozvrachaet > 100000 records.
Kak sdelat" tak 4tobi v DBGrid zapolnjalas" sna4ala toka vidimaja 4ast", a potom dannie podfetchivalis" toka po mere neobhodimosti?
Nau4ite pls...
Sergey13 (2002-11-05 17:37:00) [1]Дык я и говорю тебе, что консерваторию править надо. Ты пытаешься работать с клиент-сервером по идеологии файл-сервер. Это не есть гут. Такой программой ты любой сервак положишь на лопатки. Можно конечно поиграться с компонентами доступа, но я бы посоветовал менять логику работы. Формируй SQL запросы так, что бы фильтры вообще не использовать (в идеале) т.е. максимально конкретизируй запросы. За это отвечает фраза "where" в selecte. Очень желательно при этом использовать параметры в этой фразе. В программе изменяешь параметры и переоткрываешь запрос. И все будет летать. Надеюсь. 8-)
Нормально, в моем понимании, когда запрос возвращает не больше 100 записей (+/- от конкретных условий задачи, ессно). С бОльшим количеством все равно юзеру работать неудобно.
KPOT (2002-11-05 13:18:00) [2]Ja ispol"zuju TIBQuery i TDBGrid, po moemu u TIBQuery net metoda FetchAll. No o4en" dolgo vypolnjaetsja TIBQuery.Open. Vrode by fetchatsja ne vse zapisi, no vse ravno mnogo( bol"she 4em vidno v Gride).
Sergey: dlja filrov u menja predusmotren otdel"nyj dialog v kotorom pol"zovatel" vibiraet filtri.Da i ne dolzhno byt" strashno esli vse sdelat" pral"na. Naprimer esli etot select vypolnit" v QuickDesk resul"tat polu4aetsja mgnovenno( fetchit primerno zapisej 20-30) a potom podfet4ivaet po mere neobhodimosti
Sergey13 (2002-11-05 09:37:00) [3]2KPOT (04.11.02 18:00)
> select vozvrachaet > 100000 records.
Это надо ставить Оракл, проложить гигабитное оптоволокно и посадить стоглазого юзера перед монитором. Тогда все будет летать и всем будет хорошо. 8-)
Тут надо в консерватории править, а не на сервере и не на клиенте (клиент всегда прав!!!). Для начала попробуй поискать информацию по использованию фразы "Where" в операторе SELECT. А потом подумай - а надо ли вообще выбирать >100000 записей, да еще в грид.
Виталий Панасенко (2002-11-05 08:48:00) [4]Вообще-то, почти так оно и делается по умолчанию, если вы где-то не сделали FetchAll