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

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

Обработка ошибки в TADOCommand


Int23 ©   (2007-10-24 15:16:00) 

Создаю TADOCommand, пытаюсь вызвать ХП. В процедуре есть транзакция. В момент выполнения ХП удаляю в СКЛ Сервере процесс пользователя с помощью kill ProcID.  В клиент (в событие OnExecuteComplete у TADOConnection) приходит текст ошибки "Неопознанная ошибка". Я её обработал. Затем пытаюсь программно создать класс TADOCommand и присвоить ему ранее использованое соединение. При попытки запустить ХП выдаёт ошибку с текстом '[DBNETLIB][ConnectionWrite (send()).]General network error. Check your network documentation.' Если же заново создать ещё компонент TADOCommand  и запустить ХП, то всё ОК. Вот возник вопрос. После обработки ошибки "Неопознанная ошибка", как сделать чтобы не выдавало  "General network error". Я для соединения сделал Close и Open. Не помогло


ЮЮ   (2007-10-25 06:44:00) [1]

> Если же заново создать ещё компонент TADOCommand  и запустить
> ХП, то всё ОК

Вот и создавай всякий раз для выполнения и уничтожай после.
Это может быть и ошибкой сервера. Одна из таких приводила у меня к таким невероятным последствиям, при повторном использовании TADOCommand (после ошибки в рамках транзвкции), что только этот метод и помог.


Int23   (2007-10-24 16:34:00) [2]

А если вопрос переформулировать так. После первой ошибки почему приходит вторая? Как это обойти?


Правильный_Вася   (2007-10-24 16:05:00) [3]

1. мертвые блокировки в нормальных программах не появляются, лечить нужно причину
2. в ситуации убиения сессии вполне можно и перезайти в программу


Int23   (2007-10-24 15:35:00) [4]

затем, что бывают ситуации когда появилась мёртвая блокировка и необходимо вручную удалить процесс с скл сервера.


Правильный_Вася   (2007-10-24 15:27:00) [5]

зачем эти извращения?


Наверх

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