PL / SQL andmetüübid - PL / SQL funktsioonid ja funktsioonid koos näidetega

Lang L: none (table-of-contents):

Anonim

Sissejuhatus PL / SQL andmetüüpidesse

Sageli on vaja samu SQL-päringuid mitu korda täita ja selle vajaduse rahuldamiseks tuleb Oracle välja PL / SQL-ga 90ndate alguses. See on välja töötatud SQL võimaluste parendamiseks. See on manustatud Oracle'i andmebaasi. PL / SQL on Oracle'i andmebaasisüsteemi struktureeritud päringkeele laiendus. See on protseduurikeel, mis koosneb kolmest osast deklaratiivsest osast, mis võtab vastu suvalist arvu parameetreid, käivitatavast osast, mis koosneb SQL-i päringutest ja erandite käsitlemisest.

PL / SQL salvestatakse andmebaasis kompileeritud kujul ja sellele saab koodis oma nimega viidata. PL / SQL võimaldab arendajal andmetega manipuleerida, kasutades mis tahes otsustusloogikat, iteratsiooni ja paljusid muid funktsioone, mida protseduuriline programmeerimiskeel toetab.

PL / SQL põhijooned

PL / SQL põhijooned on toodud allpool:

  • PL / SQL võimaldab arendajal ühe käsu abil täita suvalises arvul päringuid ühes plokis.
  • PL / SQL võib toimida protseduurina, funktsioonide, käivitajate ja tüüpidena ning neid hoitakse andmebaasis ja rakendused saavad neid kasutada suvalist arv kordi.
  • Erinevalt SQL-ist on veakäsitlus PL / SQL-is võimalik.
  • PL / SQL tagastab ühe skalaarväärtuse.

PL / SQL andmetüübid

Nagu kõigil muudel keeltel, on ka PL / SQL-l andmetüübid. vaatame mõnda PL / SQL-is määratletud andmetüüpi

PL / SQL andmetüüp

Kirjeldus

BINARY_INTEGERAktsepteerib täisarvu arvandmeid, allkirjastatud täisarvu vahemikus -2, 147, 483, 648 kuni 2, 147, 483, 647 ja esindatud 32 bitti
BLOBAktsepteerib kahendandmeid
BLOB (n)Binaarsed suurte objektide andmed, mille vahemik n on vahemikus 1 kuni 2 147 483 647
BOOLEANNõustub kas tõese või valega (loogilised väärtused)
CHARAktsepteerib kindla pikkusega stringi andmeid 1
CHAR (n)Stringi andmed pikkusega n
TASUTA VARUMINE (n)Muutuva pikkusega tähemärkide stringiandmed, kus n on maksimaalne piir
ISELOOMSee on fikseeritud pikkusega tähemärkide jada ja maksimaalne suurus võib olla 32 767 baiti.
ISELOOM (n)Muutuva pikkusega tähemärkide string maksimaalse suurusega n
DATESeda kasutatakse kuupäeva-kellaaja andmete salvestamiseks, mis sisaldab selliseid väljad nagu aasta, kuu, päev, tund, minut, sekund ja palju muud.
DECIMALAktsepteerib komaandmeid maksimaalse täpsusega 38 kohta pärast koma.
TopeltKahekordse täpsusega ujukoma arv
UjukUjukoma tüüp, maksimaalse täpsusega 126 bitti
INTsee on liigendatud neljabaidine täisarv arvandmed
INTEGERsee on liigendatud neljabaidine täisarv arvandmed

PL / SQL andmetüüpide näited

Siiani oleme näinud PL / SQL-is saadaolevaid erinevaid andmetüüpe. Vaatame mõnda näidet ja vaatame, kuidas saaksime PL / SQL-is salvestatud protseduure luua ja teostada

Protseduurid PL / SQL-is on alamprogramm, mis koosneb SQL-lausetest, protseduure Oracle'is hoitakse andmebaasiobjektina ja neil on kordumatu nimi, millele neid saab suunata. Protseduuril võib olla pesastatud plokk, mis võimaldab arendajal andmetega teha mis tahes loogilisi ja aritmeetilisi toiminguid.

Vaatame salvestatud protseduuri süntaksi

Süntaks:

LOE VÕI asendada protseduuri


(
..
.
)
( IS | AS )
BEGIN
EXCEPTION
END;

(
..
.
)
( IS | AS )
BEGIN
EXCEPTION
END;

Süntaksi seletus:

  • Märksõnade loomine või asendamine käsib kompilaatoril luua andmebaasis objekti, mille nimi on protseduuris antud, protseduuri nimi peab olema kordumatu, vastasel juhul viskab kompilaator vea.
  • Nüüd, kui teil on idee protseduuri süntaksi kohta, kirjutame väga lihtsa salvestatud protseduuri ja mõistame selle erinevaid komponente.
  • Nagu iga teine ​​programmeerimiskeel, alustame ka väga lihtsa Hello World programmiga. Salvestatud protseduur võtab nime sisendina ja kuvab tulemuse kujul Hello World from

LOE VÕI Asenda protseduur Prindi_teade (p_nimi VARCHAR2-s)

Kood:

IS
BEGIN
dbms_output.put_line ('Hello World from '|| p_name);
END;
/
EXEC Print_Message ('Mohit');

Koodi seletus:

  • Siin on esimesel real märksõna Loo või asenda, mis juhendab kompilaatorit looma salvestatud protseduur nimega Print_Message, mille sisendiks on Varchar2, või asendama olemasoleva salvestatud protseduuri sama nimega.
  • Rida dbms_output.put_line ühendab sõnumist Hello Worldi sisendiga, mille olete protseduurile andnud, ja kuvab selle konsoolil.
  • Salvestatud protseduuri kutsumiseks kasutatakse märksõna EXEC, millele järgnevad parameetrite väärtused samades andmetüüpides, nagu on määratletud salvestatud protseduuris.

Funktsioonid PL / SQL-is

Funktsioon PL / SQL-is on väga sarnane salvestatud protseduuriga, ainus suur erinevus on see, et funktsioonil peaks olema tagasiväärtus. See peaks kas tagastama väärtuse või suurendama erandit. Vaatame funktsioonide funktsioone PL / SQL-is

  1. Funktsioonid, mida kasutatakse peamiselt andmete töötlemiseks, nagu loogiliste ja aritmeetiliste põhiarvutuste tegemine.
  2. Tüüpilisel funktsiooni struktuuril on 3 osa, st deklaratsiooni osa, täitmise osa ja erandiga veakäsitlus.
  3. Kui funktsioonil pole ühtegi DML-i avaldust, saab selle kutsuda valitud avalduse abil.

vaatame funktsioonide süntaksi

Süntaks:

FUNKTSIOONI loomine või asendamine


(
)
RETURN
( IS | AS )
BEGIN
EXCEPTION
END;

(
)
RETURN
( IS | AS )
BEGIN
EXCEPTION
END;

Süntaksi seletus:

  • Looge funktsiooni märksõna, mis juhendab kompilaatorit looma funktsiooni, kui seda veel pole. Tagastatavate andmete tüüp on kohustuslik, funktsiooni nimi peaks jällegi olema kordumatu.
  • Erandkäsitsusplokk on valikuline, kuid alati on soovitatav seda omada.

Järeldus

Nüüd tehkem kokkuvõte, võttes kokku põhipunktid, millest oleme selles artiklis rääkinud, PL / SQL on andmebaasi objektina salvestatud SQL-lausete kompileeritud plokk. Need objektid võivad olla tüüpi salvestatud protseduuri, funktsioonide ja tüüpidega. Oleme näinud erinevaid andmetüüpe, mida PL / SQL-is pakutakse. Õpime PL / SQL-is salvestatud protseduuride ja funktsioonide põhistruktuuri ning nende omadusi.

Soovitatavad artiklid

See on PL / SQL andmetüüpide juhend. Siin käsitleme näiteid koos koodi selgitamise ja pl / sql põhijoontega koos funktsioonidega pl / sql-s. Lisateabe saamiseks võite vaadata ka järgmisi artikleid -

  1. CASE avaldus PL / SQL-is
  2. TeraData vs Oracle
  3. Mida teevad andmeteadlased?
  4. Kursori olulisus PL / SQL-is
  5. Viska vs viskab | 5 parimat erinevust, mida peaksite teadma
  6. Erinevat tüüpi SQL-i andmed koos näidetega