Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Ловля ошибок

2.2K
26 июня 2003 года
elka
14 / / 21.04.2003
Такая ситация: БД - Оракл, программа (целая система) на Делфи. При возникновении ошибки где-либо при работе с данными, они перехватываются и выводится окошко с номером и описанием ошибки. Проблема в том, что описание ошибки далеко не всегда полное, т.е. выводится номер, но нет описания (не найдено). Все это реализовано стандартными средствами. Теперь вопрос: можно ли как-то словив ошибку, вытащить сам запрос или действие в котором она произошла? Или имя процедуры, если в процедуре? Если можно, то как?
4.5K
27 июня 2003 года
BBHL
5 / / 18.06.2003
Цитата:
Originally posted by elka
Такая ситация: БД - Оракл, программа (целая система) на Делфи. При возникновении ошибки где-либо при работе с данными, они перехватываются и выводится окошко с номером и описанием ошибки. Проблема в том, что описание ошибки далеко не всегда полное, т.е. выводится номер, но нет описания (не найдено). Все это реализовано стандартными средствами. Теперь вопрос: можно ли как-то словив ошибку, вытащить сам запрос или действие в котором она произошла? Или имя процедуры, если в процедуре? Если можно, то как?


Дельфевый SQLMonitor вам поможет... Если что Аська=34689233

4.8K
30 июня 2003 года
Raystlin
2 / / 30.06.2003
Цитата:
Originally posted by elka
Теперь вопрос: можно ли как-то словив ошибку, вытащить сам запрос или действие в котором она произошла? Или имя процедуры, если в процедуре? Если можно, то как?



По идее, ловить ошибку лучше в пакадже или процедуре Оракловой с помощью конструкции

begin
...
exception then OTHERS when
raise;
end;

В этом случае обработчик на выходе получит информацию и по процедуре и по строке где произошел ексепшн.
В идеале надо описывать каждый конкретный случай для возможных исключений, либо заводить свои.

250
04 июля 2003 года
Joker
1.4K / / 20.02.2000
Цитата:
Originally posted by Raystlin


По идее, ловить ошибку лучше в пакадже или процедуре Оракловой с помощью конструкции

begin
...
exception then OTHERS when
raise;
end;

В этом случае обработчик на выходе получит информацию и по процедуре и по строке где произошел ексепшн.
В идеале надо описывать каждый конкретный случай для возможных исключений, либо заводить свои.


специально для оракла:
Есть ли что нибудь помощней SQL-monitor в поставке с ДЕЛФИ/Билдер а то он явно не все сечет, момент конекта к ораклу из интерпрайс менеджер он не просек.. :( (и логи по той софтине которая почему то не может приконектится к ороклу не показываются.. )
Или как это можно настроить в самом оракле и потом где посмотреть ?

4.8K
07 июля 2003 года
Raystlin
2 / / 30.06.2003
Цитата:
Originally posted by Joker

специально для оракла:
Есть ли что нибудь помощней SQL-monitor в поставке с ДЕЛФИ/Билдер


Вот тут я не скажу, потому как не в курсе. 8-( Я на них писал последний раз лет пять назад. 8-(

Цитата:

а то он явно не все сечет, момент конекта к ораклу из интерпрайс менеджер он не просек.. :( (и логи по той софтине которая почему то не может приконектится к ороклу не показываются.. )
Или как это можно настроить в самом оракле и потом где посмотреть ?


Тогда такой вопрос: чем пользуетесь для коннекта? OCI или ODBC + ADO ?

4.5K
07 июля 2003 года
BBHL
5 / / 18.06.2003
Цитата:
Originally posted by Joker

специально для оракла:
Есть ли что нибудь помощней SQL-monitor в поставке с ДЕЛФИ/Билдер а то он явно не все сечет, момент конекта к ораклу из интерпрайс менеджер он не просек.. :( (и логи по той софтине которая почему то не может приконектится к ороклу не показываются.. )
Или как это можно настроить в самом оракле и потом где посмотреть ?



К сожалению Дельфевый СИКВЕЛ-монитор может отслеживать только то, что проходит через БДЕ, остальные коннекты он просто не видит...

2.2K
09 июля 2003 года
elka
14 / / 21.04.2003
Цитата:
Originally posted by BBHL


К сожалению Дельфевый СИКВЕЛ-монитор может отслеживать только то, что проходит через БДЕ, остальные коннекты он просто не видит...



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

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог