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_INTEGER | Aktsepteerib täisarvu arvandmeid, allkirjastatud täisarvu vahemikus -2, 147, 483, 648 kuni 2, 147, 483, 647 ja esindatud 32 bitti |
BLOB | Aktsepteerib kahendandmeid |
BLOB (n) | Binaarsed suurte objektide andmed, mille vahemik n on vahemikus 1 kuni 2 147 483 647 |
BOOLEAN | Nõustub kas tõese või valega (loogilised väärtused) |
CHAR | Aktsepteerib 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 |
ISELOOM | See 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 |
DATE | Seda kasutatakse kuupäeva-kellaaja andmete salvestamiseks, mis sisaldab selliseid väljad nagu aasta, kuu, päev, tund, minut, sekund ja palju muud. |
DECIMAL | Aktsepteerib komaandmeid maksimaalse täpsusega 38 kohta pärast koma. |
Topelt | Kahekordse täpsusega ujukoma arv |
Ujuk | Ujukoma tüüp, maksimaalse täpsusega 126 bitti |
INT | see on liigendatud neljabaidine täisarv arvandmed |
INTEGER | see 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
- Funktsioonid, mida kasutatakse peamiselt andmete töötlemiseks, nagu loogiliste ja aritmeetiliste põhiarvutuste tegemine.
- Tüüpilisel funktsiooni struktuuril on 3 osa, st deklaratsiooni osa, täitmise osa ja erandiga veakäsitlus.
- 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 -
- CASE avaldus PL / SQL-is
- TeraData vs Oracle
- Mida teevad andmeteadlased?
- Kursori olulisus PL / SQL-is
- Viska vs viskab | 5 parimat erinevust, mida peaksite teadma
- Erinevat tüüpi SQL-i andmed koos näidetega