Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

использование индекса


rus0303 ©   (2006-06-25 22:39:00) 

Как запустить выполняться операцию и не дожидаясь конца исполнения перейти к другим задачам. Все операции выполняются в СУБД ORACLE 9i. Помогите пожалуйста, очень срочно


Desdechado   (2006-06-26 11:51:00) [1]

> Сомневаюсь я однако, что это позволит распаралелить исполнение.
Поддерживаю сомнения. Автономные транзакции предназначены для независимых изменений в БД. Пока код не закончится, возврата не будет, имхо.


evvcom   (2006-06-26 10:01:00) [2]

> [12] Sergey13 ©   (26.06.06 09:52)

а хрен его знает, чего ему надо? Он спросил, как это ораклом сделать. Кстати, надо попробовать, действительно, будет ли распараллеливание? А то я такие вещи только на коротких транзакциях пробовал и естественно для других целей.


Sergey13   (2006-06-26 09:52:00) [3]

> [10] evvcom ©   (26.06.06 09:47)

Сомневаюсь я однако, что это позволит распаралелить исполнение.


evvcom   (2006-06-26 09:50:00) [4]

> [10] evvcom ©   (26.06.06 09:47)

и если внутри MyProc используется DML, то не забыть commit; перед выходом.


evvcom   (2006-06-26 09:47:00) [5]

> [5] Bess   (26.06.06 00:14)

create or replace procedure MyProc is
  pragma autonomous_transaction;
begin
 ...
end;


ANB   (2006-06-26 09:42:00) [6]


> Bess   (26.06.06 00:14) [5]

Используй несколько сессий и в каждой выполняй запрос асинхронно. Но если будут блокировки - это не поможет (да и вообще ничего не поможет).


sniknik   (2006-06-26 09:16:00) [7]

Германн ©   (26.06.06 02:56) [7]
нет. просто неграмотность в русском языке.


Германн   (2006-06-26 02:56:00) [8]


> sniknik ©   (25.06.06 23:21) [4]


Отрицание мягкого знака после шипящих твоё кредо? :-)


softservice   (2006-06-26 02:53:00) [9]


> Народ нужно это сделать в самом Oracle !!!! Как там сделать
> так чтоб запустить выполенние операции и не дождавшись выполенния
> произвести другую ???!!!

Какую операцию сделать и какую запустить?
В общих чертах: Юзай джобики.


Bess   (2006-06-26 00:14:00) [10]

Народ нужно это сделать в самом Oracle !!!! Как там сделать так чтоб запустить выполенние операции и не дождавшись выполенния произвести другую ???!!!


sniknik   (2006-06-25 23:21:00) [11]

срочно не получится. и чем больше "ГОРИТ!!!" тем менее обучаем "клиент", проверено практикой.

судя по всему нужно сделать асинхронное выполнение... т.е. запустил запрос, и не дожидаясь начинаеш чтото другое делать. (???)

2 варианта, первый коппоненты которые это умеют -  например ADO, настроить опцию выполнения на eoAsyncExecute, запустить и по ходу программы ловить событие onExecuteComplete (узнать что закончилось).
второй собственная реализация в потоке, внутри потока создаеш все нужные компоненты (практически почти неважно какие) иницализируеш, вносиш запрос, выполняеш, ждеш завершения. на основном потоке не отразится, он в этоже время занимается своими делами.

все. общие сведения кончились. ждем конкретных проблем, что не получается...


unknown   (2006-06-25 23:19:00) [12]


> rus0303   (25.06.06 22:39)
> Как запустить выполняться операцию и не дожидаясь конца
> исполнения перейти к другим задачам. Все операции выполняются
> в СУБД ORACLE 9i. Помогите пожалуйста, очень срочно

Запустить выполнение в отдельном потоке. (TThread+F1)


> rus0303   (25.06.06 22:57) [2]
> Пожалуйста ответьте, очень срочно и очень надо. ГОРИТ!!!

Не стоит упоминать про срочность.


rus0303   (2006-06-25 22:57:00) [13]

Пожалуйста ответьте, очень срочно и очень надо. ГОРИТ!!!


rus0303   (2006-06-25 22:42:00) [14]

Ошибся здесь не использование идекса, а вопрос по выполнению задач


Наверх

Титульная страница Поиск, карта сайта Написать письмо