Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.02.24;
Скачать: CL | DM;

Вниз

TestConnection для БД InterBase   Найти похожие ветки 

 
RedKat ©   (2003-02-06 10:20) [0]

Кто может подсказать готовую функцию или компоненту с пом. которой можно реализовать тест подключения к БД Interbase (перед самим подключением). Как это сделано в IBExplorer к примеру ?


 
Max Zyuzin ©   (2003-02-06 10:25) [1]

IBDatabase


 
Reindeer Moss Eater   (2003-02-06 10:26) [2]

А зачем делать тест подключения к БД Interbase (перед самим подключением). ?


 
RedKat ©   (2003-02-06 10:37) [3]

В IBDataBase можно сделать только Connected :=True....
А потом отлавливать ошибки ;-( Неудобно это как-то.

Тест подключения нужен для того чтобы проверить есть база или нет ? Дело в том что моя прога должна работать с 2-мя БД, при этом одна есть всегда (а если нет -> Shutdown) а вторая может быть, а может и не быть. Посему перед подключением к БД-2 желательно сделать что-то вроде:

if TestConnection("alex:c:\Base\main.gdb") then
begin
...Connected :=True;....
end
else
ShowMessage("Резервная БД не доступна !");
....


 
Reindeer Moss Eater   (2003-02-06 10:40) [4]

Тест подключения нужен для того чтобы проверить есть база или нет ?
Умно-умно. Ничего не скажешь.

Выполнил тест-подключение, которое сказало тебе, что сервер жив. А сервер в это время уже начал процесс останова. Или наоборот. Тест-подключение не удалось, потому что сервер в это время не успел до конца загрузиться (Но был готов обслужить клиента спустя 50 ms после завершения тестового коннекта )


 
Max Zyuzin ©   (2003-02-06 10:51) [5]

>RedKat © (06.02.03 10:37)
Мне кажется ты хочешь делать абсолютно ненужные телодвижения...
Если таки хочется... ну и сделай сам функцию TestConnection(...)
И проверяй на здоровье... но думаю это все фигня надуманая.


 
RedKat ©   (2003-02-06 10:51) [6]

К Reindeer Moss Eater
Ну это Вы преувеличиваете ;-) Я не знаю как у Вас, а у меня БД находится всегда в одном из двух состояний On -всегда, Off -аварийный режим работы (все очень быстро-быстро бегают вокруг сервера с задачей его поднять).
Посему когда стартует клиент БД либо уже есть, либо неисправна.
Вот для принятия решения и нужна такая фича ;-)


 
Max Zyuzin ©   (2003-02-06 10:52) [7]

Да кстати ты думаешь что в IBExplorer или в любой другой утилите это реализовано сильно по другому?


 
Reindeer Moss Eater   (2003-02-06 10:58) [8]

всегда в одном из двух состояний
Моменты смены состояний тоже всегда известны? Тогда зачем проверка?
Неизвестны? А если проверяешь коннект за секунду до перехода сервера в состояние Off?


 
DarkGreen ©   (2003-02-06 13:20) [9]

Ну и зачем тебе нужен следующий идиотизм???

function TestConnection: Boolean;
begin
Result := True;
try
MY_Database.Connected := True;
except
on E:EInterbaseError do
Result := False;
end;
MY_Database.Connected := False;
end;

Вообще-то можно попробовать подключиться к серверу на 3050 порт используя TTCPIPClient, если удачно, значит сервер жив.
Хотя в любом случае, это глупости



Страницы: 1 вся ветка

Текущий архив: 2003.02.24;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.015 c
1-75865
Nikols
2003-02-13 18:43
2003.02.24
Работает ли


14-76102
Jakommo
2003-02-06 12:26
2003.02.24
Как запретить Сtr+Alt+Del и Alt+Tab в Вин2000


14-76090
nika_ufc
2003-02-09 18:38
2003.02.24
помагите


3-75801
Yuraz
2003-02-04 19:49
2003.02.24
Формирование сложного SQL запроса для SQL Server 2000


14-76125
Сатир
2003-02-06 13:59
2003.02.24
Забыл математику, а справочника под рукой нет:(