![]() |
|
Модераторы: gambit |
![]()
|
|
| WTF |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 30.12.2005 Репутация: нет Всего: нет |
Значит задача такая:
Есть БД Oracle и web-приложение работающее с ней. По этой базе производится поиск и выполняются довольно сложные SQL-запрсы, которые теоретически могут выполнятся длительное время. И должна быть функциональность отмены выполнения запроса, то есть, если пользователю надоедает ждать, он может нажать "Отмена" и запрос прекратит выполняться. Вопрс: Как это можно сделать из кода .NET? Причем желательно чтобы запрс прекратился выполнятся и на сервере Oracle, то есть не только визуально для клиента. |
|||
|
||||
| arilou |
|
|||
![]() Великий МунаБудвин ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2646 Регистрация: 15.7.2004 Где: город-герой Минск Репутация: 4 Всего: 61 |
Довольно сложный вопрос...
Можно попробовать сделать так. Каждый раз, когда запускается такая длинная хранимая процедура, для нее создается транзакция, и процедура запускается в новом потоке (worker). Вызывающий (UI-шный) поток ждет его завершения (но не заблокирован). При нажатии на кнопку "Отмена" UI-шный поток говорит worker'у Abort, а в worker'e стоит try..catch(ThreadAbortException), который откатывает транзакцию. Сумбурно немного... |
|||
|
||||
| mr.DUDA |
|
|||
|
3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 8 Всего: 232 |
...вопрос, возможно ли такое в оракле
-------------------- ![]() |
|||
|
||||
| arilou |
|
|||
![]() Великий МунаБудвин ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2646 Регистрация: 15.7.2004 Где: город-герой Минск Репутация: 4 Всего: 61 |
||||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, stab, mr.DUDA, Exception. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Базы данных под .NET | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |