Hva er hensikten med PL / SQL Unntaks Handlers?

Hva er hensikten med PL / SQL Unntaks Handlers?


PL / SQL-unntaksbehandlerne er blokker av PL / SQL programkode som forteller et program hva de skal gjøre når en feil, også kjent som et unntak, oppstår under utførelsen. Uten et unntak handler, vil programmene stoppe og krever brukermedvirkning eller lage andre urelaterte feilmeldinger som reduserer programmets pålitelighet og lesbarhet.

Definisjon av Exception

Et unntak er en PL / SQL-feil eller advarsel som avbryter flyten av et program eller del av koden. Unntak kan forekomme når et stykke kode møter logiske feil i aritmetikk, som i divisjon med null, eller gjennom instruksjon koding, som i stack overflow.

Typer av PL / SQL-unntak

Det finnes to typer unntak i PL / SQL: interne og brukerdefinerte unntak. Interne unntak, som er delt inn i navngitt og navngitt, er definert og oppvokst uten brukermedvirkning av databasesystemet. Brukerdefinerte unntak må være eksplisitt definert av en programmerer.

Fordeler med Unntak håndtering

Unntaksbehandlerne er biter av kode i en PL / SQL-program som felle og håndtere potensielle problemer som kan oppstå under kjøring. Fordelen ved å ha unntakshåndtering er at det gjør det mulig for et program for å prosessere en feil uten å ha en programmerer sjekk når et avbrudd skjer. Avvikshåndtering øker også program lesbarhet og pålitelighet ved at en programmerer å isolere problematiske deler av PL / SQL-kode og feilsøke det tilsvarende. Uten unntak håndtering, kan andre ubeslektede oppstå feil som krever mer forskning og tid til å korrigere.

Syntaksen til en Exception Handler

Et unntak handler fanger en intern feil ved hjelp av SQLCODE å fange feilnummeret eller type og SQLERRM å vise feilmeldingen. Programmerere erklære unntaksbehandlerne i en egen blokk med kode i et program som vanligvis følger følgende format:

ERKLÆRE
erklære unntak her;
BEGYNNE
program uttalelser eller kode som kan heve unntak;
UNNTAK
NÅR exception1 THEN

statements to handle exception1;

NÅR exception2 THEN

statements to handle exception2;

NÅR exception3 THEN

statements to handle exception3;

SLUTT;