(c) Instytut Informatyki Politechniki Poznańskiej
20
Funkcje SQLCODE i SQLERRM
•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;