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

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

Перехватить сообщение об ошибке Oracle


lightix ©   (2003-08-12 11:30:00) 

Юзаю Oracle через компоненты NCOCI
Подскажите как можно перехватить сообщение об ошибке, при этом узнать номер ошибки (ORA-XXXXX) и выдать свое сообщение в зависимости от номера?


Shur   (2003-08-18 20:32:00) [1]

тебе еще надо? ответь, полистаю исходники!!!!


asp   (2003-08-12 14:13:00) [2]

Я к DB2 подхожу след. образом:
Пишу "перехватчик" ошибок.

procedure TMainForm.AppEvents1Exception(Sender: TObject; E: Exception);
const
DB2ErrorID = "[IBM][CLI Driver][DB2/NT]";
begin
if (Pos(DB2ErrorID, E.Message) > 0) then
begin
if not(Assigned(DB2ErrorForm)) then
DB2ErrorForm:= TDB2ErrorForm.Create(Application);
DB2ErrorForm.DBException:= E as EDBEngineError;
try
DB2ErrorForm.ShowModal
finally
DB2ErrorForm.Free;
DB2ErrorForm:= nil
end
end else
Application.ShowException(E)
end;

Форма DB2ErrorForm имеет метод легкого синтаксического анализа текста сообщения об ошибке, вытаскивая из него номер и пр. полезную информацию. Ведь все сообщения от СУБД имеют одинаковую структуру.


Reindeer Moss Eater   (2003-08-12 11:33:00) [3]

Смотри в документацию к своим компонентам и изучай классы генерируемых исключений, если у них они есть.


Наверх

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