ORACLE PL/SQL Εξαιρέσεις Exceptions
ΟΡΙΣΜΟΣ Μια εξαίρεση (exception) είναι ένας δείκτης που ενεργοποιείται κατά την εκτέλεση του προγράμματος
Ενεργοποίηση Όταν συμβαίνει ενα σφάλμα της βάσης Όταν ενεργοποιηθεί ρητά
Διαχείριση Παγίδευση Ειδοποίηση του καλούντος περιβάλλοντος.
Τύποι εξαιρέσεων Server –Προκαθορισμένοι - Predefined –Ακαθόριστοι – Non predefined User-defined
Παγιδεύσεις των Εξαιρέσεων Σύνταξη EXCEPTION WHEN ex_name1 [ or ex_name2 ] THEN Statement … [WHEN OTHERS THEN Statement ]
Οδηγίες –Η λέξη-κλειδί EXCEPTION ξεκινά την τελευταία παράγραφο του μπλοκ. –Χειριστής(ες) εξαίρεσης – Exception handler(s) Ένας μόνον εκτελείται
Προκαθορισμένες Εξαιρέσεις DUP_VAL_ON_INDEX TIMEOUT_ON_RESOURCE TRANSACTION_BACKED_OUT INVALID_CURSOR NOT_LOGGED_ON LOGIN_DENIED NO_DATA_FOUND ystem.phphttp:// ystem.php TOO_MANY_ROWS ZERO_DIVIDE INVALID_NUMBER STORAGE_ERROR PROGRAM_ERROR VALUE_ERROR CURSOR_ALREADY_OPEN
Προκαθορισμένες Εξαιρέσεις – Διαχείριση EXCEPTION WHEN NO_DATA_FOUND THEN Statement(s); WHEN TOO_MANY_ROWS THEN Statement(s); WHEN OTHERS THEN Statement(s); END
FUNCTIONS SQLCODE SQLERRM
Ρητές Εξαιρέσεις (User-defined) DECLARE E_invalid_code EXCEPTION; BEGIN Statement(s); RAISE E_invalid_code Statement(s); EXCEPTION WHEN E_invalid_code THEN END;
RAISE_APPLICATION_ERROR Δήλωση σφάλματος προγράμματος