|
Выдать текст исключения в обработчике исключений
|
|||
---|---|---|---|
#18+
Имеется хр. процедура P_STOR_PR1, в которой встречаются различные raise_application_error(...); Имеется другая хр. процедура P_STOR_PR2, которая вызывает P_STOR_PR1. Во 2-й процедуре вызов 1-й обёрнут обработчиком исключений, но не для того чтобы заглушить возможные исключения в 1-й процедуре, а для того чтобы дописать свой текст в возникающее исключение в 1-й процедуре. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26.
Во 2-й процедуре если, например, в 1-й процедуре произошло исключение "Ошибка 1", очень хочется выдать сообщение об ошибке следующего содержания: "Ошибка в P_STOR_PR1. А именно: Ошибка 1" Вместо "Ошибка 1" нужно подставлять текст ошибки того исключения, которое произошло в 1-й процедуре. Вот как такое сделать? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.10.2020, 14:26 |
|
Выдать текст исключения в обработчике исключений
|
|||
---|---|---|---|
#18+
sqlerrm, sqlcode ... |
|||
:
Нравится:
Не нравится:
|
|||
21.10.2020, 14:36 |
|
Выдать текст исключения в обработчике исключений
|
|||
---|---|---|---|
#18+
verter, SQLERRM не оно? ..... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
21.10.2020, 14:37 |
|
Выдать текст исключения в обработчике исключений
|
|||
---|---|---|---|
#18+
Обратите внимание и на третий параметр RAISE_APPLICATION_ERROR. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.10.2020, 14:43 |
|
Выдать текст исключения в обработчике исключений
|
|||
---|---|---|---|
#18+
verter, dbms_utility.format_error_backtrace ... |
|||
:
Нравится:
Не нравится:
|
|||
21.10.2020, 14:45 |
|
Выдать текст исключения в обработчике исключений
|
|||
---|---|---|---|
#18+
verter, не закопипастелось Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43.
.... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
21.10.2020, 14:58 |
|
Выдать текст исключения в обработчике исключений
|
|||
---|---|---|---|
#18+
Stax, dmdmdm же намекнул "Обратите внимание и на третий параметр RAISE_APPLICATION_ERROR". Измени: Код: plsql 1.
на: Код: plsql 1.
и получишь больше инфы: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
SY. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.10.2020, 19:43 |
|
Выдать текст исключения в обработчике исключений
|
|||
---|---|---|---|
#18+
Учтите ещё что текст ошибки может превысить 1кб. А $$PLSQL_UNIT содержит имя вашей процедуры. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.10.2020, 23:13 |
|
Выдать текст исключения в обработчике исключений
|
|||
---|---|---|---|
#18+
НеофитSQL $$PLSQL_UNIT содержит имя вашей процедуры. Щас нам Неофит пояснит, как имя процедуры в пакете узнать. Правда, Неофит? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.10.2020, 23:41 |
|
Выдать текст исключения в обработчике исключений
|
|||
---|---|---|---|
#18+
dmdmdm НеофитSQL $$PLSQL_UNIT содержит имя вашей процедуры. Щас нам Неофит пояснит, как имя процедуры в пакете узнать. Правда, Неофит? У ТС процедуры не в пакете, там все норм. Читайте внимательнее, чтоб такие простые ошибки не совершать. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.10.2020, 07:44 |
|
|
start [/forum/topic.php?fid=52&msg=40010514&tid=1880778]: |
0ms |
get settings: |
7ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
78ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
others: | 319ms |
total: | 482ms |
0 / 0 |