Uvod v PL / SQL podatkovne tipe
Pogosto je treba iste iskalne poizvedbe SQL izvajati večkrat, zato se Oracle zadovolji s PL / SQL v zgodnjih 90-ih. Razvit je za izboljšanje zmogljivosti SQL. Vgrajena je v bazo podatkov Oracle. PL / SQL je razširitev strukturiranega poizvedbenega jezika v sistemu Oracle Database. To je proceduralni jezik, ki je sestavljen iz treh delov, deklarativni del, ki lahko sprejme poljubno število parametrov, izvedljiv del, ki je sestavljen iz poizvedb SQL in obdelave izjem.
PL / SQL je shranjen v bazi podatkov v sestavljeni obliki in se lahko v kodi sklicuje na njegovo ime. PL / SQL omogoča razvijalcu, da lahko manipulira s podatki s pomočjo katere koli logike odločitve, iteracije in številnih drugih funkcij, ki jih podpira procesni programski jezik.
Ključne značilnosti PL / SQL
Ključne značilnosti PL / SQL so navedene spodaj:
- PL / SQL omogoča razvijalcu, da z enim ukazom izvede poljubno število poizvedb v enem bloku.
- PL / SQL lahko deluje kot postopek, funkcije, sprožilci in vrste ter se shranijo v bazo podatkov in jih aplikacije lahko poljubno uporabijo.
- Za razliko od SQL je v PL / SQL možno ravnanje z napakami.
- PL / SQL vrne eno samo skalarno vrednost.
Vrste PL / SQL podatkov
Kot kateri koli drug jezik ima tudi PL / SQL vrste podatkov. poglejmo nekatere vrste podatkov, definirane v PL / SQL
PL / SQL Podatkovni tip |
Opis |
BINARY_INTEGER | Sprejema celostne številčne podatke, podpisane celo število v razponu od -2, 147, 483, 648 do 2, 147, 483, 647 in predstavljeno v 32 bitih |
BLOB | Sprejema binarne podatke |
BLOB (n) | Binarni podatki o velikih objektih, kjer je razpon od n med 1 do 2 147 483 647 |
BOOLEAN | Sprejema resnične ali napačne (logične vrednosti) |
ČAR | Sprejema podatke o nizih s fiksno dolžino 1 |
CHAR (n) | Podatki niza dolžine n |
CHAR VARYING (n) | Podatki o nizu znakov spremenljive dolžine, pri čemer je n največja omejitev |
ZNAČILO | Gre za niz znakov s fiksno dolžino, največja velikost pa je lahko 32.767 bajtov. |
ZNAČILO (n) | Znakovni niz spremenljive dolžine z največjo velikostjo n |
DATUM | Uporablja se za shranjevanje podatkov o datumu in času, ki vključuje polja, kot so leto, mesec, dan, ura, minuta, sekunda in številne druge. |
DECIMALNO | Sprejema decimalne podatke z največjo natančnostjo 38 decimalnih števk. |
DVOJNA | Število dvojnih natančnosti s plavajočo vejico |
Ploščica | Vrsta plavajoče točke z največjo natančnostjo 126 bitov |
INT | gre za podpisane štiribajtne številčne podatke |
INTEGER | gre za podpisane štiribajtne številčne podatke |
Primeri PL / SQL podatkovnih vrst
Do sedaj smo videli različne vrste podatkov, ki so na voljo v PL / SQL, poglejmo nekaj primerov in poglejmo, kako lahko ustvarimo in izvajamo shranjene postopke v PL / SQL
Postopki v PL / SQL je podprogram, sestavljen iz stavkov SQL, postopki v Oracle so shranjeni kot objekt baze podatkov in ima edinstveno ime, po katerem ga je mogoče napotiti. Postopek ima lahko ugnezdeni blok, ki razvijalcu omogoča izvajanje vseh logičnih in aritmetičnih operacij na podatkih.
Poglejmo si skladnjo shranjenega postopka
Sintaksa:
USTVARJALI ALI ZAMENJAVI POSTOPEK
(
..
.
)
( IS | AS )
BEGIN
EXCEPTION
END;
(
..
.
)
( IS | AS )
BEGIN
EXCEPTION
END;
Skladnja Pojasnilo:
- Ključne besede za izdelavo ali zamenjavo naložijo prevajalniku, da ustvari objekt baze podatkov z imenom, ki je navedeno v postopku, ime postopka mora biti edinstveno, sicer bo prevajalnik vrgel napako.
- Zdaj, ko imate predstavo o sintaksi postopka, napišite zelo preprost shranjeni postopek in razumemo različne sestavne dele tega postopka.
- Kot kateri koli drug programski jezik bomo tudi mi začeli z zelo preprostim programom Hello World. Ta shranjeni postopek bo vzel ime kot vhod in prikazal rezultat kot Hello World od
USTVARJALI ALI ZAMENITI POSTOPEK Natisni_Mesija (ime_I V VARCHAR2)
Koda:
IS
BEGIN
dbms_output.put_line ('Hello World from '|| p_name);
END;
/
EXEC Print_Message ('Mohit');
Pojasnilo kode:
- Tukaj je v prvi vrstici ključna beseda Ustvari ali zamenjaj, ki bo prevajalcu naročila, naj ustvari shranjeni postopek z imenom Print_Message, ki sprejme Varchar2 kot vhod ali nadomesti obstoječi shranjeni postopek z istim imenom.
- Vrstica dbms_output.put_line bo povezala Hello World iz sporočila z vhodom, ki ga posredujete postopku, in ga prikazala na konzoli.
- Za klic shranjenega postopka se uporabi ključna beseda EXEC, ki ji sledijo vrednosti parametrov v istih vrstah podatkov, kot so definirane v shranjenem postopku.
Funkcije v PL / SQL
Funkcija v PL / SQL je zelo podobna shranjenemu postopku, edina velika razlika je, da mora imeti funkcija povratno vrednost. Mora vrniti vrednost ali povzročiti izjemo. Poglejmo nekaj značilnosti funkcij v PL / SQL
- Funkcije, ki se uporabljajo predvsem za namene manipulacije s podatki, radi izvajajo osnovne logične in aritmetične izračune.
- Tipična struktura funkcije ima 3 dele, tj. Deklaracijski del, izvedbeni del in obravnavanje napak pri izjemi.
- Če funkcija nima nobene izjave DML, jo lahko pokličete z izjavo select.
poglejmo skladnjo Funkcij
Sintaksa:
USTVARJALI ALI ZAMENITE FUNKCIJO
(
)
RETURN
( IS | AS )
BEGIN
EXCEPTION
END;
(
)
RETURN
( IS | AS )
BEGIN
EXCEPTION
END;
Skladnja Pojasnilo:
- Ustvarite funkcijsko ključno besedo, ki bo prevajalcu naročila, naj ustvari funkcijo, če je že ni. Vrsta vrnjenih podatkov je obvezna, ponovno mora biti ime funkcije edinstveno.
- Blok za ravnanje z izjemami ni obvezen, vendar ga je vedno priporočljivo imeti.
Zaključek
Zdaj pa zaključimo s povzetkom ključnih točk, o katerih smo govorili v tem članku, PL / SQL je sestavljeni blok stavkov SQL, ki so shranjeni v bazi podatkov kot predmet. Ti predmeti so lahko shranjeni v postopku, funkcijah in vrstah. Videli smo različne vrste podatkov, ki se ponujajo v PL / SQL. Spoznamo osnovno strukturo shranjenih postopkov in funkcij v PL / SQL ter njihove značilnosti.
Priporočeni članki
To je vodnik za PL / SQL podatkovne vrste. Tukaj razpravljamo o primerih z razlago kode in ključnimi značilnostmi pl / sql skupaj s funkcijami v pl / sql. Če želite izvedeti več, si oglejte tudi naslednje članke -
- Stavek CASE v PL / SQL
- TeraData proti Oracle
- Kaj počnejo znanstveniki?
- Pomen kurzorja v PL / SQL
- Vrzi proti metanju | Top 5 razlik, ki bi jih morali vedeti
- Različne vrste podatkov SQL s primeri