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

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

Подвисание ;программы на время выборки большого объёма данных. [D5, MSSQL]


Eduard ©   (2002-12-02 15:09:00) 

Подвисание программы на время выборки большого объёма данных.
Можно ли как нибудь избежать этого? использовал Thread что то не получилось.. если кто может помогите ... Заранее благодарен .


Eduard   (2002-12-03 15:10:00) [1]

Diouzshev
ExecuteOptions = [eoAsyncFetch]
процесс пошёл что то как то странно всего два раза заходит в процедуру ADOQueryFetchProgress и то в начале и в конце выбоки .
мож так и надо :))


Diouzshev   (2002-12-03 14:57:00) [2]

ADOQueryFetchProgress

Occurs periodically during an asynchronous data retrieval operation.

Похоже надо с ExecuteOptions поиграть, если что получится - пиши, самому интересно %)


Eduard   (2002-12-03 14:51:00) [3]

Prooksius ©
ADOQueryFetchProgress а это событие надо как то активировать ?
что то создал процедуру а через неё процесс пожоже не проходит.
покрайней мере на точке останова не тормозит..


Diouzshev   (2002-12-03 14:47:00) [4]

См статью, там все подробно описано:
http://www.delphicorner.f9.co.uk/articles/db1.htm


Prooksius   (2002-12-03 14:42:00) [5]

Во-во... Похоже, то, что надо.


Eduard   (2002-12-03 14:39:00) [6]

Использую ADOQuery там есть событие ADOQueryFetchProgress попробую с ним что-либо заморатить..


Prooksius   (2002-12-02 15:52:00) [7]

2 Ihor Osov"yak © (02.12.02 15:48)
Да, знаю, но читай это:

> Eduard (02.12.02 15:09)
> Подвисание программы на время выборки большого объёма данных.


Ihor Osov'yak   (2002-12-02 15:48:00) [8]

Prooksius © (02.12.02 15:34)
Это не выход.Ибо может быть запрос, очень долгий, который ничего не фетчит...
выход - только потоки. Eduard наверно чего-то не то делал. Или синхронайз неумело юзал (если юзал). Кстати, в демках к делфи кажись есть пример віполнения запросов в потоках ....


Prooksius   (2002-12-02 15:34:00) [9]

Зависит от компонент доступа к MSSQLServer , которыми ты пользуешься. (А может, и нет :)
Должно быть примерно такое событие: OnFetchRecord - возникает при фетчинге каждой записи клиентом. На это сообщение вешаешь прогрессбар и идешь курить.
Проблема в том, есть ли в компонентах это событие. Может, придется самому копаться в исходниках и делать. :)


Наверх

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