Главная страница
    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.46 MB
Время: 0.046 c
2-1198096409
Cent
2007-12-19 23:33
2008.01.20
Форточка => кнопочка в панели задач


15-1197282248
em240
2007-12-10 13:24
2008.01.20
На чём написана Delphi?


15-1197382004
@!!ex
2007-12-11 17:06
2008.01.20
Потестите эмулятор виртуальных десктопов


2-1198361464
Embargo
2007-12-23 01:11
2008.01.20
Без ошибки


1-1192976166
Farel
2007-10-21 18:16
2008.01.20
Blob поля





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский