Uvod v PL / SQL zbirke

Prvič, tako kot drugi sodobni programski jeziki tudi PL / SQL programerjem omogoča uporabo zbirk PL / SQL. Torej, na splošno je zbirka podatkovna struktura, ki ima urejeno skupino elementov iste vrste podatkov in do teh elementov se dostopa preko indeksov v skladu s posebnimi zahtevami. Najpogosteje uporabljene zbirke v večini programskih jezikov so Arrays, Set, List in Queue itd.

Zbirka PL / SQL ponuja veliko prednosti tako programerju kot uporabniku, hkrati pa shranjuje in dostopa do podatkov podobnih podatkovnih tipov v aplikaciji. Kadar je treba vse podatke obdelati naenkrat ali obdelovati veliko količino podatkov, so PL / SQL zbirke zelo koristne. Zmanjša tudi velikost in hitrost obdelave, hkrati pa shranjuje podatke in dostopa do elementov. Do elementov v zbirkah je enostavno dostopati skozi zanke in indekse. Za razliko od nizov v drugih programskih jezikih PL / SQL podpira samo enodimenzionalne zbirke, podatke v zbirkah pa identificirajo naročniki (v drugih jezikih jih imenujemo tudi indeks). Vsak element je dostopen in obdelan s pomočjo tega edinstvenega podpisa.

Vrste zbirk PL / SQL

Zbirke PL / SQL so 3 vrste, ki so spodaj podane s sintakso:

Gnezdene tabele

Gnezdena tabela je zbirka PL / SQL, v kateri velikost ni določena. Torej je kot enodimenzionalni niz razen dejstva, da je velikost določena v nizih in je lahko gosta in redka. Programer mora vsakič razširiti pomnilnik, preden ga uporabi s pomočjo Naročnika EXTEND v razstavljeni tabeli, se začne s celim '1'.

Gnezdene tabele spadajo v obstojne zbirke PL / SQL, kar pomeni, da jih je mogoče ponovno uporabiti kot shranjene v bazi podatkov. Programer lahko izbriše tudi element matrike in napravi tabelo redko, kar pomeni, da so gnezdene tabele lahko tako goste kot redke. Vnesene tabele lahko deklarirate bodisi znotraj bloka PL / SQL bodisi na ravni sheme.

Ker zgornja velikost v vnesenih tabelah ni omejitev, spadajo v kategorijo zbirk brez omejitev PL / SQL.

Sintaksa:

TYPE typ_name IS table of element_data_type;
Table_name typ_name;

Spremenljivi velikostni nizi ali VARRAY

VARRAY je zbirka PL / SQL, v kateri je določena velikost zbirke, kot je definirano v njeni definiciji, zato se VARRAY imenujejo omejeni elementi v matrikah se zaporedno začnejo iz podpisnika 1. Za razliko od ugnezdenih tabel varrays zagotavljajo manj prožnosti, saj so gosto samo. Torej programer ne more izbrisati nobenega elementa med seboj, izbriše se celoten varray ali ga je mogoče obrezati od konca. Do različic je treba dostopati in jih hraniti zaporedno. Določimo ga lahko znotraj PL / SQL bloka ali na ravni sheme. Tako kot ugnezdene tabele tudi varrays spada v kategorijo obstojnih zbirk, da jih je mogoče ponovno uporabiti in shraniti v bazo podatkov.

Sintaksa:

TYPE typ_name IS VARRAY OF element_data_type;

Pridružitveni nizi

Kot pove že ime, se asociativni nizi uporabljajo za zadrževanje vrednosti v parih ključ-vrednost. Uporabljeni ključ je lahko niz ali celo število. Pridružljive matrike imenujemo tudi tabela indeksa. Ta zbirka je lahko gosta ali redka. V asociativnih nizih velikost matrike ni določena v zagonu in programerju ni treba, da bi jo inicializiral pred uporabo. Asociativni niz spada pod kategorijo neobstojnih zbirk, kar pomeni, da niso shranjene v bazi podatkov in jih ni mogoče ponovno uporabiti, zato so definirane znotraj bloka PL / SQL in se uporabljajo samo v določeni seji. Ti nizi spadajo v kategorijo neomejenih zbirk.

Sintaksa:

TYPE typ_name IS TABLE OF element_data_type;

Metode zbiranja

PL / SQL ponuja nekaj vnaprej določenih metod za lažje delo z zbirkami. Nekatere metode so podane spodaj:

S. št.Ime metodeOpis
1.COUNTVrne število elementov v zbirki
2PRVIVrne najmanjšo (prvo) indeksno številko v zbirki za cela števila naročnin
3.ZADNJIVrne največjo (zadnjo) indeksno številko v zbirki za celo število naročnin.
4.OBSTOJEČI (n)Uporablja se za preverjanje, ali je v zbirki določen element ali ne. Vrne TRUE, če so v zbirki prisotni n-ti elementi, FALSE, če ne.
5.PREDHOD (n)Vrne številko indeksa, ki je predhodnica indeksa (n), ki ga je uporabnik navedel v zbirki.
6.NASLEDNJE (n)Vrne številko indeksa, ki je naslednik indeksa (n), ki ga poda uporabnik v zbirki.
7.TRIMUporablja se za odstranitev elementov iz zbirke. TRIM odstrani zadnji element iz zbirke in TRIM (n) odstrani zadnji n element s konca zbirke.
8.DELETEUporablja se za odstranitev vseh elementov iz dane zbirke. Po odstranitvi vseh elementov nastavi število zbirk na 0
9.DELETE (m, n)Uporablja se v primeru asociativnih nizov in indeksiranih tabel za odstranjevanje vseh elementov v območju od m do n. Vrne ničelno, če je m večji od n.
10.OMEJITEVUporablja se za preverjanje največje velikosti zbirke.

Izjeme v zbirki

Spodaj je nekaj izjem, ki se bodo najverjetneje pojavile med delom z zbirkami.

Ime izjemeScenarij, v katerem nastane izjema
NO_DATA_FOUNDIzjema nastane, če se vpisnik, ki se nanaša na element, ki je izbrisan in ne obstaja več.
VALUE_ERRORIzjema se zgodi, kadar vrednost stolpcev, ki poskušajo dostopati, ni mogoče pretvoriti v vrsto ključa ali kadar je podpisnik ničen
COLLECTION_IS_NULLIzjema nastane pri delu s samodejno ničelno zbirko
SUBSCRIPT_BEYOND_CO UNTIzjema nastane, če naročnik preseže največje število števila elementov v zbirki.
SUBSCRIPT_OUTSIDE_LIM ITIzjema nastane pri poskusu sklicevanja z uporabo indeksne številke, ki je zunaj zakonitega območja.
TOO_MANY_ROWSIzjema nastane, ko SELECT v stavek vrne več kot 1 vrstico.

Prednosti zbirk v PL / SQL

Spodaj so podane nekatere prednosti zbirk PL / SQL:

  • Poleg tega je ena največjih prednosti zbirk ta, da izboljšuje delovanje sistema, tako da predpomni statične podatke, do katerih je treba redno dostopati.
  • Najpomembneje je, da so zbirke koristne pri delu z velikim naborom podatkov, ki imajo isto vrsto podatkov, na katerih mora uporabnik izvesti več operacij DML.
  • Z uporabo ene spremenljivke zbirke lahko zmanjšamo več številk spremenljivk, ki se uporabljajo za shranjevanje različnih vrednosti in s tem shranimo pomnilnik.
  • Izvajanje različnih operacij, kot je shranjevanje in obdelava podatkov, postane enostavno z že zagotovljenimi metodami zbiranja PL / SQL.

Zaključek

Skozi zgornji opis lahko dobite predstavo o tem, kaj je zbirka PL / SQL in o metodah, ki jih je mogoče uporabiti v zbirkah PL / SQL. Preden v programu uporabite katero koli zbirko PL / SQL, mora razvijalec najprej dobro premisliti o scenariju, preden izbere katero koli vrsto. Čeprav delo v zbirkah PL / SQL ni težko, vendar se na različnih točkah lahko pojavijo določene izjeme, ki se jih mora programer zavedati in vedeti, kako ravnati z njimi.

Priporočeni članki

To je vodnik po zbirkah PL / SQL. Tukaj razpravljamo o skladnji, vrstah, metodah in izjemah PL / SQL zbirk, skupaj s prednostmi. Če želite izvedeti več, si oglejte tudi naslednje članke -

  1. Kazalniki v PL / SQL
  2. Stavek CASE v PL / SQL
  3. Oracle PL / SQL Intervju Vprašanja
  4. PL / SQL ukazi