powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Передать параметр в эксепшн
9 сообщений из 9, страница 1 из 1
Передать параметр в эксепшн
    #39409343
Двоюшник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть желание что-то сделать типа такого:

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
declare
  e exception;
  pragma exception_init(e,-1);
begin
  if <something wrong> then
    set var ...  --??
   raise e;
  end if;
end;



на выходе получить вменяемое сообщение с exception, а не
Код: plaintext
1.
2.
ORA-00001: unique constraint (.) violated
ORA-06512: at line 6

Тоесть с именем констрейнта или другого параметра в других exceptions

Можно такое сделать?
Заранее благодарен!
---
Ну ты заходи ежели чё...
...
Рейтинг: 0 / 0
Передать параметр в эксепшн
    #39409358
Фотография AmKad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
raise_application_error?
...
Рейтинг: 0 / 0
Передать параметр в эксепшн
    #39409361
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AmKadraise_application_errorмимикрировать не поможет.
И наверное, слава богу.
...
Рейтинг: 0 / 0
Передать параметр в эксепшн
    #39411063
Фотография Takurava
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Elicмимикрировать не поможет. В каком смысле?
...
Рейтинг: 0 / 0
Передать параметр в эксепшн
    #39411069
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TakuravaElicмимикрировать не поможет. В каком смысле? Перечитываем исходный вопрос.
...
Рейтинг: 0 / 0
Передать параметр в эксепшн
    #39411087
atrkarrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ДвоюшникТоесть с именем констрейнта или другого параметра в других exceptions
SQLERRM разве не выводит имя констрейнта?
Немного интереснее и полезнее имхо сделать привязку исключений к предметной области, чтобы для пользователя выводилось не имя констрейнта, а человеческое сообщение
...
Рейтинг: 0 / 0
Передать параметр в эксепшн
    #39411149
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
atrkarrrчеловеческое сообщениев пределах 30 байт ни в чем себе не отказывай.
...
Рейтинг: 0 / 0
Передать параметр в эксепшн
    #39411150
Фотография --Eugene--
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Двоюшник,

ты расскажи конкретную ситуацию.
Наверняка есть простой выход.
...
Рейтинг: 0 / 0
Передать параметр в эксепшн
    #39411152
кто тут?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Двоюшник,

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
declare
  l_num         number;
  hz_exception  exception;
  pragma exception_init(hz_exception, -20001);
begin
  select 1 /*2*/
  into l_num
  from dual;  
  
  if
    l_num = 1 then raise_application_error(-20000, 'Custom error 1'); 
  else 
    raise hz_exception;
  end if;
end;
/
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Передать параметр в эксепшн
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]