Ce este blocul PL / SQL?
În PL / SQL, codul nu este executat în format cu o singură linie, dar este întotdeauna executat prin gruparea codului într-un singur element numit Blocks. În acest tutorial, veți afla despre aceste blocuri.
Blocurile conțin atât instrucțiuni PL / SQL, cât și instrucțiuni SQL. Toate aceste instrucțiuni vor fi executate ca un întreg, mai degrabă decât să execute o singură instrucțiune la un moment dat.
În acest tutorial, veți învăța:
- Ce este blocul PL / SQL?
- Structura blocului
- Sintaxa blocului PL / SQL
- Tipuri de bloc PL / SQL
Structura blocului
Blocurile PL / SQL au o structură predefinită în care codul urmează să fie grupat. Mai jos sunt diferite secțiuni ale blocurilor PL / SQL.
- Secțiunea Declarație
- Secțiunea de execuție
- Secțiunea Excepție-manipulare
Imaginea de mai jos ilustrează diferitele blocuri PL / SQL și ordinea secțiunilor acestora.
Secțiunea Declarație
Aceasta este prima secțiune a blocurilor PL / SQL. Această secțiune este o parte opțională. Aceasta este secțiunea în care va fi declarată declarația variabilelor, cursorilor, excepțiilor, subprogramelor, instrucțiunilor de pragmă și colecțiilor necesare în bloc. Mai jos sunt câteva caracteristici ale acestei părți.
- Această secțiune specială este opțională și poate fi omisă dacă nu sunt necesare declarații.
- Aceasta ar trebui să fie prima secțiune dintr-un bloc PL / SQL, dacă este prezentă.
- Această secțiune începe cu cuvântul cheie „DECLARA” pentru declanșatoare și bloc anonim. Pentru alte subprograme, acest cuvânt cheie nu va fi prezent. În schimb, partea după definiția numelui subprogramului marchează secțiunea declarației.
- Această secțiune ar trebui să fie întotdeauna urmată de secțiunea de execuție.
Secțiunea de execuție
Partea de execuție este partea principală și obligatorie care execută de fapt codul care este scris în interiorul său. Deoarece PL / SQL așteaptă instrucțiunile executabile din acest bloc, acesta nu poate fi un bloc gol, adică ar trebui să aibă cel puțin o linie de cod executabilă validă în el. Mai jos sunt câteva caracteristici ale acestei părți.
- Acesta poate conține atât cod PL / SQL, cât și cod SQL.
- Acesta poate conține unul sau mai multe blocuri în interiorul acestuia ca un bloc imbricat.
- Această secțiune începe cu cuvântul cheie „ÎNCEPE”.
- Această secțiune ar trebui să fie urmată fie de secțiunea „END”, fie de secțiunea de gestionare a excepțiilor (dacă există)
Secțiunea de gestionare a excepțiilor:
Excepția este inevitabilă în programul care are loc în timpul rulării și pentru a gestiona acest Oracle a furnizat o secțiune de gestionare a excepțiilor în blocuri. Această secțiune poate conține, de asemenea, instrucțiuni PL / SQL. Aceasta este o secțiune opțională a blocurilor PL / SQL.
- Aceasta este secțiunea în care se tratează excepția ridicată în blocul de execuție.
- Această secțiune este ultima parte a blocului PL / SQL.
- Controlul din această secțiune nu poate reveni niciodată la blocul de execuție.
- Această secțiune începe cu cuvântul cheie „EXCEPȚIE”.
- Această secțiune ar trebui să fie întotdeauna urmată de cuvântul cheie „END”.
Cuvântul cheie „END” marchează sfârșitul blocului PL / SQL.
Sintaxa blocului PL / SQL
Mai jos este sintaxa structurii blocului PL / SQL.
DECLARE --optionalBEGIN --mandatory EXCEPTION --optional END; --mandatory/
Notă: Un bloc trebuie întotdeauna urmat de '/' care trimite informațiile către compilator despre sfârșitul blocului.
Tipuri de bloc PL / SQL
Blocurile PL / SQL sunt în principal de două tipuri.
- Blocuri anonime
- Blocuri numite
Blocuri anonime:
Blocurile anonime sunt blocuri PL / SQL cărora nu li se atribuie niciun nume. Acestea trebuie create și utilizate în aceeași sesiune, deoarece nu vor fi stocate în server ca obiecte de bază de date.
Deoarece nu trebuie să stocheze în baza de date, nu au nevoie de pași de compilare. Acestea sunt scrise și executate direct, iar compilarea și executarea au loc într-un singur proces.
Mai jos sunt câteva alte caracteristici ale blocurilor Anonymous.
- Aceste blocuri nu au niciun nume de referință specificat pentru ele.
- Aceste blocuri încep cu cuvântul cheie „DECLARA” sau „ÎNCEPE”.
- Deoarece aceste blocuri nu au nici un nume de referință, acestea nu pot fi stocate în scopuri ulterioare. Acestea vor fi create și executate în aceeași sesiune.
- Ei pot apela celelalte blocuri numite, dar apelul la bloc anonim nu este posibil, deoarece nu are nicio referință.
- Poate avea un bloc imbricat, care poate fi denumit sau anonim. De asemenea, poate fi cuibărit în orice blocuri.
- Aceste blocuri pot avea toate cele trei secțiuni ale blocului, în care secțiunea de execuție este obligatorie, celelalte două secțiuni sunt opționale.
Blocuri denumite:
Blocurile denumite au un nume specific și unic pentru ele. Acestea sunt stocate ca obiecte de bază de date în server. Deoarece sunt disponibile ca obiecte de bază de date, pot fi referite sau utilizate, atâta timp cât este prezent pe server. Procesul de compilare pentru blocurile denumite se întâmplă separat în timp ce le creați ca obiecte de bază de date.
Mai jos sunt câteva alte caracteristici ale blocurilor denumite.
- Aceste blocuri pot fi apelate din alte blocuri.
- Structura blocului este identică cu un bloc anonim, cu excepția faptului că nu va începe niciodată cu cuvântul cheie „DECLARA”. În schimb, va începe cu cuvântul cheie „CREATE” care instruiește compilatorul să îl creeze ca obiect de bază de date.
- Aceste blocuri pot fi cuibărite în alte blocuri. De asemenea, poate conține blocuri imbricate.
- Blocurile denumite sunt practic de două tipuri:
- Procedură
- Funcţie
rezumat
După acest tutorial, ar trebui să fiți conștienți de blocurile PL / SQL și de tipurile sale, de diferitele secțiuni de blocuri și de utilizările acestora. Descrierea detaliată a blocurilor PL / SQL numite va fi tratată în tutorialul ulterior.