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

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

Как обработать в приложении разрыв connect-a [D7, MySQL, Firebird 1.5.0]


Страницы:   1 2

Анна ©   (2007-04-12 13:56:00) 

Приложение работает постоянно, по таймеру, выбирая вновь поступившие записи с удаленного сервера MySQL и вставляет их в таблицу локального сервера с FB 1.5.0
Уважаемые программисты, дайте совет, как не прерывая работу программы, выдать сообщение на форме c информацией об отсутствии соединения ( например на label), и только потом по таймеру проверять восстановлено ли соединение. Как погасить собщение WIN об отсутствии коннекта?
Для MySQL  пользуюсь компанентами TMySQLServer и TMySQLQuery. Для FB - DBExpress.


Анна   (2007-04-12 15:00:00) [21]


> Jan1   (12.04.07 14:56) [9]

Хорошо. А как мне сообщение WIN, что нет связи с MySQL - сервером погасить? Как то можно тоже через trу...exception ?


Jan1   (2007-04-12 14:56:00) [22]


> Работает нормально. Но бывают ситуации, когда обрывается
> связь. И как это обработать не могу сообразить. :(

в чем проблема слать простенький запрос(скажем select NOW()) каждые 5 минут? если он даст сбой - проблема со связью...


Анна   (2007-04-12 14:46:00) [23]


> Jan1   (12.04.07 14:32) [5]

Я сделала  только запись с MySQL на FB и запись текстового файла ( протокол работы, где
try
SQLQuery2.ExecSQL;
except
on E:Exception do begin
Writeln(txt_file,E.Message);
end;
end;
и записываю ошибки по Внешнему ключу, чтобы пропускать записи и не прерывать работу программы.
Работает нормально. Но бывают ситуации, когда обрывается связь. И как это обработать не могу сообразить. :(


Sergey13   (2007-04-12 14:45:00) [24]

http://ibase.ru/fibc/ibx_disc.htm
http://ibase.ru/devinfo/ibx_connect.txt


Val   (2007-04-12 14:36:00) [25]

>слишком долго
по сравнению с выборкой/заливкой данных?
оберните выборку/заливку в try except и в последнем - все что хотите..


Jan1   (2007-04-12 14:32:00) [26]


> можно так делать?

можно :)
что Вы уже сделали?


Анна   (2007-04-12 14:31:00) [27]


> Плохиш ©   (12.04.07 14:12) [3]

НЕт, не могу. Приложение пишет по таймеру, через каждую минуту. Каждый раз подключаться и отключаться - слишком долго. Программа запускается утром и работает до конца раб дня (до 23=-00), без присмотра. И поэтому необходимо вывести информацию на форму об отсутствии коннекта и чтобы она продолжала крутиться по таймеру, но уже с другим интервалом ( напр 5 мин) и проверяла только соединение. И как только его обнаруживала - переходила на процедуру где select - insert.
можно так делать?


Плохиш   (2007-04-12 14:12:00) [28]

Предлагаю отказаться от постоянного соединения с бд:
1. Подключились
2. Передали данные
3. Отключились


Анна   (2007-04-12 14:06:00) [29]


> Jan1   (12.04.07 14:02) [1]

Да я уже посидела и с хелпом и с яндексом! Не могу сообразить, не хватает знаний. Я физик, запрограммировала из-за необходимости. Поэтому и прошу совета.


Jan1   (2007-04-12 14:02:00) [30]

если Вы уже сделали
> Приложение работает постоянно, по таймеру, выбирая вновь
> поступившие записи с удаленного сервера MySQL и вставляет
> их в таблицу локального сервера с FB 1.5.0

то посидеть чуть-чуть с хелпом и Вы доделаете то что хотите. Вам же полезнее будет.


Страницы:   1 2

Наверх

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