Определение кода исключения

Синтаксис
 
exccode()
Описание

Возвращает значение типа INTEGER – код исключения процедурного языка.

Значение кода исключения:

  1. если исключение возникло при выполнении SQL-команды, то будет возвращен код завершения для последнего выполненного оператора EXECUTE по курсору;

  2. если исключение возникло при выполнении оператора процедурного языка, то будет возвращен код исключения процедурного языка (см. Виды исключений).

Пример
1) получение кода исключения процедурного языка при выполнении операторов процедурного языка:
create or replace procedure sp_exccode() result int for debug
declare
  var i int;
code
  i := 1/0;
exceptions 
  when all then return exccode();
end;
call sp_exccode();
Результат -2
2) получение кода исключения при выполнении SQL-команды по курсору по умолчанию:
create or replace procedure sp_exccode2() result int for debug
declare
  var i int;
code
  execute direct "selectt * from xxxxx";
exceptions 
  when all then return exccode();
end;
call sp_exccode2();
Результат 2051