Показать сообщение отдельно
  #2  
Старый 19.09.2007, 14:49
Аватар для mav_c
mav_c mav_c вне форума
Активный
 
Регистрация: 26.03.2007
Адрес: Москва
Сообщения: 287
Репутация: 30
По умолчанию

Цитата:
Сообщение от vladst
Ситуация такая: в коде соединяемся с бд и нормально работаем:
ADOConnection.Open;
Query.SQL.Text := 'select * from ....'
Qurey.ExecSQL;
...
Программа работает круглосуточно, но ночью база останавливается левыми средствами и обновляется из других источников, после чего запускается... Т.е. мое ADOConnection.Open в программе отваливается и выдается exception, после чего прога уже не работает.

Вопрос: Как перехватить эту ошибку и попытаться переконнектить ADOConnection к базе?

Напиши функцию TestConnect которая будет выполнять элементарный запрос к БД. Если он не проходит и вываливается exception то лови его и делай Connection.Close(); Connection.Open();
и дёргай эту функцию перед своими запросами к БД.
__________________
---------------------------------------------
Программирование - не профессия, а стиль жизни
Ответить с цитированием