Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.01.20;
Скачать: CL | DM;

Вниз

Запрос в два потока   Найти похожие ветки 

 
KOMArKad   (2007-09-07 10:58) [0]

Здравствуйте уважаемые мастера.
Подскажите пожалуйста, кто сталкивался с этим попросом, как выполнить одновременно два запроса.
Поясню:
На форме 2 AdoQuery

В первом
DECLARE @nResult INT, @nId INT
EXECUTE @nResult = Up_GenerateWHCell........

Во втором
SELECT COUNT(*) FROM ##tmpWHCell

Первый AdoQuery выполняет процедуру, которая в свою очередь делает ряд операций, в том числе во временной таблице хранит кол-во INSERT"нутых записей

Второй AdoQuery это запрос на кол-во этих записей

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

Если есть возможность подскажите на уровне примеров.


 
Сергей М. ©   (2007-09-07 11:20) [1]


> каким образом можно выполнять эти запросы одновременно


Какой смысл выполнять SELECT-запрос одновременно с выполнением модифицирующей процедуры ?


 
KOMArKad   (2007-09-07 11:48) [2]


> Какой смысл выполнять SELECT-запрос одновременно с выполнением
> модифицирующей процедуры ?


Потому что, процедура не модифицирует, а создает новые записи. В другую таблицу помещаются ID этих записей, а SELECT подсчитывает кол-во уже вставленных записей, этим производиться попытка, создать progressbar при вставки огромного кол-во записей


 
clickmaker ©   (2007-09-07 11:50) [3]


> В другую таблицу помещаются ID этих записей, а SELECT подсчитывает
> кол-во уже вставленных записей, этим производиться попытка,
> создать progressbar

это называется чесать левое ухо правой ногой.
Почему бы не отображать прогресс параллельно со вставкой?


 
KOMArKad   (2007-09-07 12:02) [4]

I>
> Почему бы не отображать прогресс параллельно со вставкой?

Подскажите как это сделать?<


 
clickmaker ©   (2007-09-07 12:15) [5]

кстати, у ADOQuery есть ExecuteOptions = eoAsyncExecute


 
KOMArKad   (2007-09-07 12:46) [6]


> clickmaker ©  


Спасибо Большое!!!


 
isasa ©   (2007-09-10 18:03) [7]

clickmaker ©   (07.09.07 12:15) [5]

кстати, у ADOQuery есть ExecuteOptions = eoAsyncExecute


Насколько помнится, возврат в событие OnFetching, работает только для "SELECT ...".
Для хранимой процедуры там глухо, тем более, если в ней BEGIN TRAN ...


 
evvcom ©   (2007-09-12 14:52) [8]


> В другую таблицу помещаются ID этих записей, а SELECT подсчитывает
> кол-во уже вставленных записей

Параллельно в разных потоках - это значит в разных сессиях, потому select не будет видеть результатов insert до commit. Оно тебе это надо?



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

Текущий архив: 2008.01.20;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.02 c
6-1179133249
Санек2007
2007-05-14 13:00
2008.01.20
Загрузка изображения с сайта


15-1197722276
UI__IU
2007-12-15 15:37
2008.01.20
Слово не понятное...


15-1197968507
авыф
2007-12-18 12:01
2008.01.20
вставить функцию в FastReport


1-1192990151
dreamse
2007-10-21 22:09
2008.01.20
Ускорение работы FileExists


6-1178605115
nali
2007-05-08 10:18
2008.01.20
не работатет InternetOpenUrl в потоке