•Funkcja SQLCODE zwraca numer błędu, który
wystąpił. Numer jest zawsze ujemny, za wyjątkiem błędu
NO_DATA_FOUND (+100) i błędów definiowanych przez użytkownika
(+1)
•Funkcja SQLERRM zwraca
treść błędu, który wystąpił.
•Jeśli nie wystąpił żaden błąd to SQLCODE
zwraca 0 a SQLERRM zwraca : „ORA-0000:
normal, successful completion”
DECLARE
err_num
NUMBER; err_msg VARCHAR2(100);
BEGIN
...
EXCEPTION
...
WHEN
OTHERS THEN
err_num
:= SQLCODE;
err_msg
:= SUBSTR(SQLERRM, 1, 200);
INSERT
INTO errors VALUES (err_num, err_msg);
END;