Izjava o primeru Oracle PL/SQL

Izjava O Primeru Oracle Pl Sql



Kontrolni tok je eden od primarnih gradnikov programiranja. Določa vrstni red, v katerem se izvajajo različni bloki kode v programu.

Tako kot večina programskih jezikov tudi jezik Oracle PL/SQL ponuja različne stavke nadzornega toka, kot so IF-THEN, CASE, FOR, WHILE itd.







V tej objavi se bomo naučili, kako delati s stavkom CASE v PL/SQL, da bi uvedli nadzorni tok v naše poizvedbe Oracle.



Uvod v izjavo CASE

Stavek CASE vam omogoča definiranje zaporedja stavkov. Stavek case nato izbere eno zaporedje za izvedbo na podlagi podanega pogoja.



Razmišljajte o tem kot o učinkovitejšem načinu deklariranja nabora blokov if-then ob ohranjanju berljivosti.





Sintakso stavka CASE lahko izrazimo v Oraclu, kot je prikazano v naslednjem:

OVITEK
WHEN pogoj1 THEN rezultat1
WHEN pogoj2 THEN rezultat2
...
ELSE rezultat
KONEC

Stavek CASE ovrednoti vsak pogoj v členih WHEN v tej sintaksi.



Če stavek najde ujemajoč se stavek, vrne ujemajoči se rezultat. Vendar v nekaterih primerih izjava o primeru morda ne najde ujemajočega se pogoja. V takem scenariju stavek izvede rezultat, ki je definiran v bloku ELSE.

OPOMBA : blok ELSE ni obvezen. Če ni na voljo, mehanizem zbirke podatkov uporablja naslednjo sintakso:

DRUGEGA:
RAISE CASE_NOT_FOUND;

To omogoča motorju baze podatkov, da sproži izjemo in začasno ustavi izvajanje, če ni ujemajočega se pogoja.

Primer 1: Osnovni primer izjave CASE

Ta primer prikazuje osnovni primer uporabe operatorja case v Oraclu:

izjaviti
starostna številka;
vnos char(10);
začeti
starost:= 24;
starost primera
ko 17 torej
vnos := 'zavrnjen';
ko 24 potem
vnos := '9,99';
ko 45 torej
vnos :='15,99';
drugače
vnos := 'ni dovoljeno';
končni primer;
DBMS_OUTPUT.PUT_LINE(vnos);
konec;

Predložena ilustracija mora preizkusiti morebitne pogoje ujemanja in vrniti ustrezen status. Na primer, ker je pogoj ujemanja 24, se klavzula vrne takole:

9,99

Primer 2: Stavek CASE s tabelo baze podatkov

Ta primer uporablja stavek case s tabelo zbirke podatkov.

izberite ime, priimek, plačo,
Ovitek
ko je plača  2500 potem 'Visoka'
sicer 'Neznano'
konča kot status_plače
od ZAPOSLENIH;

Zagotovljena poizvedba uporablja izjavo primera za testiranje razpona plač iz tabele zaposlenih.

Dobljena vrednost je prikazana v naslednjem:

Zaključek

V tej objavi ste se naučili, kako uporabiti stavek Oracle case za testiranje različnih pogojev in izvedbo dejanja, če je eden resničen.