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

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

проверка базы для соединения [D5, MySQL]


Xmen ©   (2007-03-28 13:08:00) 

Как можно проверит базу для соединения.
Если конкретно как можно вывести сопщения если неполучется коннект с базой по причине: нет сети, нет базы.


Jan   (2007-03-28 15:11:00) [1]

off top
xmen - Ты Вовка?


Val   (2007-03-28 14:40:00) [2]

почитать про блок try..except, raise..


Xmen   (2007-03-28 14:23:00) [3]

Ну тогда как быть?


sniknik   (2007-03-28 13:42:00) [4]

> Это годится?
нет! во первых проверяешь коннект, но зачем то там же открываешь таблицы(???!!!!), а во вторых ошибка, причина не подключения, спрятана за невразумительным "Ошибка соединения". служба поддержки,если таковая имеется/будеш работать в конторе, просто "повесится" искать и устранять истинную причину... это не обработка ошибок, это вредительство, чем так лучше здесь вообще try except не использовать.


Xmen   (2007-03-28 13:41:00) [5]


> Val ©   (28.03.07 13:33) [5]
>
> таблицы-то убери


Убрал.
попробовал поставил др. имя хоста.
получил сообшение, но система тоже дала ощибку?
после сообщения нужно было выйте из проги.


Sergey13   (2007-03-28 13:40:00) [6]

> [6] pavel_guzhanov ©   (28.03.07 13:37)

лучше так:

try
MySqlDb1.Connected := False;
except
ShowMessage('Вот привязалась зараза!!!');
Exit;
end;

8-)


pavel_guzhanov   (2007-03-28 13:37:00) [7]

лучше так:

MySqlDb1.Connected := False;
MySqlDb1.Host  := IniFile.ReadString('Baza ','Host','' );
try
MySqlDb1.Connected := True;
except
ShowMessage('Ошибка соединения с базой');
Exit;
end;
try
tbMain.Active := True;
except
ShowMessage('Ошибка соединения с таблицей Main');
exit;
end;
try
tbKontrol.Active := True;
except
ShowMessage('Ошибка соединения с таблицей Kontrol');
exit;
end;
try
tbTypeMail.Active := True;
except
ShowMessage('Ошибка соединения с таблицей TypeMail');
Exit;
end;


Val   (2007-03-28 13:33:00) [8]

таблицы-то убери


Xmen   (2007-03-28 13:30:00) [9]

Это годится?

try
 MySqlDb1.Connected := False;
 MySqlDb1.Host  := IniFile.ReadString('Baza ','Host','' );
 MySqlDb1.Connected := True;
 tbMain.Active := True;
 tbKontrol.Active := True;
 tbTypeMail.Active := True;
except
 ShowMessage('Ошибка соединения');
 Exit;
end;


Sergey13   (2007-03-28 13:21:00) [10]

> [2] Xmen   (28.03.07 13:18)

Попробуй приконнектиться и обработай исключение.


Xmen   (2007-03-28 13:18:00) [11]

Оригинально.
Но мне нужен код.
А как это сказка будет в кодах Дельфи.
:)

И спасибо за советы


Sergey13   (2007-03-28 13:12:00) [12]

Алгоритм примерно таков:

Закинул дед сеть в море!
Тянет-потянет, вытянуть не может!
А ему в ответ: "Сеть не доступна!"

8-)


Наверх

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