Форум: "Базы";
Текущий архив: 2003.09.25;
Скачать: [xml.tar.bz2];
ВнизВыполнение Query+кода в отдельном потоке Найти похожие ветки
← →
Vovan (2003-09-04 17:30) [0]У меня возникла необходимость выполнить в отдельном потоке запрос и по результатам этого запроса в том же потоке заполнить MemoryTable (из набора утилит Rx). Запрос в потоке выполняется:
Query.Open;
,но далее код типа:
while not Query.Eof do begin
//заполнение MemoryTable
end;
...выполнять отказывается.
Как заставить поток отрабатывать до тех пор, пока не будет выполнен весь код до конца?
← →
Nikolay M. (2003-09-04 17:36) [1]
> ...выполнять отказывается
Это как? Говорит "Не буду выполнять код!"?
← →
Vovan (2003-09-04 17:57) [2]Нет, молчит:) Но MemoryTable остается пустой. Т.е., если для контроля поставить после
Query.Open
ShowMessage("Буду выполнять код");
то такого сообщения не дождетесь :)
Т.о. вопрос могу сформулировать иначе: почему в потоке после открытия запроса (с текстом Select... например) далее ни одна команда не выполняется?
← →
MsGuns (2003-09-04 18:00) [3]А сам запрос корректный ? Запусти его в эксплорере для поверки
← →
sniknik (2003-09-04 18:00) [4]наверное потому, что Query у тебя в основном потоке обьявлен.
← →
Vlad (2003-09-04 18:01) [5]Приведи код, как ты с потоком работаешь ?
← →
Nikolay M. (2003-09-04 18:02) [6]
> почему в потоке после открытия запроса (с текстом Select...
> например) далее ни одна команда не выполняется?
Хз :)
Посмотри в екзамплах BkQuery - там все выполняется.
← →
Vovan (2003-09-04 18:08) [7]Огромное спасибо sniknik !!! Это как раз ТО оказалось:)
2MsGuns: текст запроса
Select NPol from Blank
и все:)
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.09.25;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.009 c