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

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

MSSQL+ADO


Rserg ©   (2002-09-26 18:52:00) 

Как в DELPHI отловить код и сообщение ошибки вызываемой тригером если я работаю с БД через ADO.


try
TADOCommand1.execute;
except
{здесь мне надо получить код ошибки}
end;

Заранее благодарен :)


Rserg   (2002-09-26 20:06:00) [1]

дело в том что у меня в делфях вылетает не та ошибка которую я генерю в тригере как RaiseError а ошибка OLE провайдера котрый я использйую в ADOConnection со своим текстом и кодом ошибки


Shaman_Naydak   (2002-09-26 20:00:00) [2]

Кстати, программисты на Дельфях прошляпили очень интересный факт.
Предположим у тебя в хранимой делается PRINT, а затем RAISERROR.
Так вот, в качестве сообщения об ошибке будет именно то, что выдает PRINT (так как эти гаврики долго не парясь берут Description нулевого элемента коллекции).. Там есть и другие интересные особенности :))


Shaman_Naydak   (2002-09-26 19:57:00) [3]

Если нужно сообщение, то ты можешь просто взять
try
TADOCommand1.execute;
except
on E: Exception do
E.Message <-
end

Если ты полезешь в ADOConnection.Errors, то он представляет из себя коллекцию, у каждого элемента которого ты можежь получить Description, Source, SQLState, NativeError и Error, если не ошибаюсь (пишу по памяти)
А что тебе конкретно надо-то (Severity между прочим, ты не получаешь :( )


Наверх

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