Sisemised erandid esitatakse kaudselt käitusaja süsteemi poolt, nagu ka kasutaja määratud erandid, mille olete seostanud Oracle'i veanumbriga, kasutades EXCEPTION_INIT. Teised kasutaja määratletud erandid tuleb aga RAISE-lausetega selgelt esile tõsta.
Milliseid erandeid esitatakse kaudselt?
Eelmääratletud erandid esitab käitussüsteem kaudselt (automaatselt). Kasutaja määratud erandid peavad olema selgelt esile tõstetud RAISE-lausetega. Tõstetud erandite käsitlemiseks kirjutage eraldi rutiinid, mida nimetatakse erandite töötlejateks.
Millise erandi teeb Oracle automaatselt?
Sisemine erand tõstetakse automaatselt esile, kui teie PL/SQL-programm rikub Oracle'i reeglit või ületab süsteemist sõltuvat limiiti. PL/SQL eeldefineerib eranditena mõned tavalised Oracle'i vead. Näiteks PL/SQL tõstab eelmääratletud erandi NO_DATA_FOUND, kui SELECT INTO lause ei tagasta ühtegi rida.
Mis on tõstmise erand Oracle'is?
Avaldis RAISE peatab PL/SQL-i ploki või alamprogrammi tavapärase täitmise ja annab juhtimise üle erandikäsitlejale. RAISE avaldused võivad esile kutsuda eelmääratletud erandeid, nagu ZERO_DIVIDE või NO_DATA_FOUND või kasutaja määratud erandeid, mille nimed otsustate ise.
Mis on eelmääratlemata erandid?
Eelmääratlemata erandid on sarnased eelmääratletud eranditega, välja arvatudneil pole eelmääratletud nimesid. Neil on standardne Oracle'i veanumber (ORA-) ja veateade. funktsioon EXCEPTION_INIT. Eelmääratlemata Oracle'i serveri vea saate tuvastada, deklareerides selle esm alt.