Главная страница
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.017 c
2-1198380081
Шар
2007-12-23 06:21
2008.01.20
Как читать данные из потока в такое поле ?


15-1197341553
Slider007
2007-12-11 05:52
2008.01.20
С днем рождения ! 11 декабря 2007 вторник


4-1182414612
BillyJeans
2007-06-21 12:30
2008.01.20
Передача параметра в Thread


2-1198234675
Denis
2007-12-21 13:57
2008.01.20
Отображение текста из dbf


2-1198141918
SKIPtr
2007-12-20 12:11
2008.01.20
Как узнать об изменении CheckBox