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

Вниз

Как отследить ошибку при подключении к БД?   Найти похожие ветки 

 
EvilX ©   (2004-01-29 12:11) [0]

Есть TDatabase.
Как отследить, что произошла ошибка при подключении к БД, что бы вывести своё сообщение об ошибке?
Умом понимаю, что try...except, но как конкретно? Допустим, при случае, что пользователь ввёл неверные логин/пароль?


 
Карелин Артем ©   (2004-01-29 12:35) [1]

try <f1 жмем> и видим пример отлова ошибок.

try
/// соединяемся
except
//не соединились
on E:Exception do ErrorDialog(E.Message, E.HelpContext);
// или выводим что-то свое.
end;

или не пользуемcя try/except, что тоже выведет сообщение об ошибке.


 
Digitman ©   (2004-01-29 12:35) [2]

в дан.случае при отказе в выполнении операции будет возбуждено исключение класса EDBEngineError

этот класс имеет св-во ErrorCode: DBIResult
его и надо анализировать при обработке данного исключения

коды, которые могут фигурировать в ErroeCode, перечислены в станд. файле bde.int

отсюда и пляши


 
Карелин Артем ©   (2004-01-29 12:48) [3]

Еще может оказаться интересно:
Enables the TDBEngineErrorDlg instance, replacing the standard exception message at runtime.

procedure HookExceptions;

Description

To display all unhandled EDBEngineError exceptions in a TDBEngineErrorDlg (rather than the standard message box), create a TDBEngineErrorDlg and call HookExceptions to enable it:

TDBEngineErrorDlg.Create(Application).HookExceptions;

If you include this code in an application"s project (.DPR) file, or in an OnCreate event handler for the project"s main form, the TDBEngineErrorDlg will trap and display unhandled EDBEngineError exceptions at runtime.



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

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

Наверх




Память: 0.47 MB
Время: 0.025 c
1-79877
Leech
2004-02-10 12:03
2004.02.25
нужна структура наподобие массивов....


14-80197
syte_ser78
2004-01-30 11:49
2004.02.25
Задорнов


14-80136
Slavik_v
2004-02-02 05:54
2004.02.25
Что за пакет ScinPackD6 и где его можно взять?


1-79737
BALU1111
2004-02-12 11:53
2004.02.25
Шифрование данных


1-79867
Dr.Karter
2004-02-10 14:32
2004.02.25
Системное время