Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2008.01.20;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.044 c
2-1197912005
TroikA
2007-12-17 20:20
2008.01.20
Функции


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


15-1197530102
zdm
2007-12-13 10:15
2008.01.20
Текстовик


8-1172655767
DevilDevil
2007-02-28 12:42
2008.01.20
Проиграть OGG.


2-1198222673
Kolan
2007-12-21 10:37
2008.01.20
Возвращение объекта из процедуры.





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский