Procedural Language/Structured Query Language (PL/SQL) este extensia procedurala a limbajului SQL.
PL/SQL este un limbaj de programare sofisticat care asigură accesarea datelor unei baze de date relaţionale orientate obiect şi permite gruparea unei mulţimi de comenzi într-un bloc unic de tratare a datelor. Programul este format din unul sau mai multe blocuri care pot conţine blocuri încuibărite.
PL/SQL include atât instrucţiuni SQL pentru manipularea datelor şi pentru gestiunea tranzacţiilor, cât şi instrucţiuni proprii. Limbajul combină construcţiile procedurale ale unui limbaj LG3 cu puterea şi flexibilitatea lui SQL (LG4).
Combinaţia a generat un limbaj puternic pentru modelarea aplicaţiilor complexe.
PL/SQL extinde SQL prin construcţii specifice limbajelor procedurale (definirea variabilelor, declararea tipurilor, utilizarea structurilor de control, implementarea procedurilor şi funcţiilor, introducerea tipurilor obiect şi metodelor
etc.). PL/SQL oferă posibilităţi moderne de tratare a informaţiei: încapsularea datelor, analiza specială a erorilor, mascarea informaţiei, orientarea obiect. Posibilităţile lui SQL sunt folosite pentru un acces rafinat la date, iar facilităţile oferite de PL/SQL sunt folosite pentru fluxul controlului procesării datelor.
Dintre funcţionalităţile limbajului PL/SQL care determină ca acesta să fie frecvent utilizat se remarcă următoarele facilităţi:
-
-
- integrarea comenzilor SQL de bază;
- integrarea cu server-ul Oracle şi cu utilitare Oracle;
- oferirea unui suport pentru programarea orientată obiect;
- asigurarea securităţii informaţiei;
- definirea şi gestiunea blocurilor de instrucţiuni;
- gestiunea variabilelor, constantelor şi a cursoarelor;
- modularizarea programelor (subprograme, pachete);
- implementarea şi utilizarea declanşatorilor;
- utilizarea structurilor de control fundamentale;
- detectarea şi gestiunea erorilor de execuţie şi a situaţiilor excepţionale;
- dezvoltarea de aplicaţii Web
-
PL/SQL este o tehnologie utilizată de server-ul Oracle şi de anumite utilitare Oracle. Blocurile PL/SQL sunt transmise unui motor PL/SQL şi procesate (compilate şi executate) de acesta. Motorul PL/SQL poate să se afle pe server-ul Oracle sau într-un utilitar, iar utilizarea sa depinde de unde se invocă PL/SQL. Multe utilitare Oracle (inclusiv Developer/2000) au propriul lor motor PL/SQL care este independent de motorul prezent pe server-ul Oracle.
Blocurile PL/SQL pot fi executate pe staţia client fără interacţiune cu server-ul sau în întregime pe server. Când blocurile PL/SQL sunt referite dintr-un program PRO*, din iSQL*Plus, sau de către Server Manager, motorul PL/SQL de pe server-ul Oracle va procesa aceste blocuri. Acesta descompune blocul în instrucţiuni SQL şi le trimite executorului de instrucţiuni SQL (SQL Statement Executor) de pe server-ul Oracle. Fără PL/SQL, instrucţiunile SQL ar fi procesate separat, fiecare la un moment dat, fiecare implicând un apel la server-ul Oracle.
Restul comenzilor (procedurale) sunt procesate de către executorul instrucţiunilor procedurale (PSE – Procedural Statement Executor) care este în motorul PL/SQL. PSE poate procesa datele care sunt locale aplicaţiei, reducându-se astfel activitatea de transfer spre server-ul Oracle şi numărul de cursoare solicitate. În felul acesta, este necesar un singur transfer pentru a trimite blocul din aplicaţie către server.
O aplicaţie bază de date poate fi structurată în trei părţi:
- interfaţa utilizator (utilizatorul introduce anumite informaţii şi obţine nişte rezultate în urma executării aplicaţiei);
- aplicaţia logică efectivă;
- baza de date.
Există două modele pentru proiectarea unei aplicaţii bază de date:
- modelul client-server (two-tier);
- modelul three-tier.
Multe dintre aplicaţiile baze de date sunt construite folosind modelul clasic client-server, descris succint anterior pentru PL/SQL. Modelul este caracterizat de cele două componente: client şi server. Client-ul mânuieşte interfaţa, iar server-ul conţine baza de date. Aplicaţia logică este scindată între client şi server. De remarcat această caracteristică fundamentală a modelului că aplicaţia comunică direct cu server-ul. Există un motor PL/SQL pe server, iar în anumite cazuri şi pe client.
Dacă motorul PL/SQL este pe server, atunci aplicaţia (care poate fi scrisă în Pro*C, JDBC, OCI sau alte limbaje) care rezidă pe client trimite cereri la un server de date. Cererile sunt rezolvate utilizând SQL. Diferite cereri SQL pot fi grupate
într-un bloc PL/SQL şi trimise ca o singură entitate server-ului.
Vom considera un scenariu în care există două motoare PL/SQL, unul pe staţia client (local) şi un motor PL/SQL pe server. De exemplu, un declanşator ce se execută pe staţia client şi care apelează un subprogram stocat în baza de date. În
acest caz, blocurile anonime sunt trimise motorului PL/SQL de pe staţia client, care procesează local comenzile procedurale. Comenzile neprocedurale din interiorul blocului sunt trimise executorului de instrucţiuni SQL de pe server. De asemenea, apelurile procedurilor care sunt stocate pe server sunt trimise tot motorului de pe server pentru procesare.
Today the player base is only talking about the mystery card on Treasures of Aztec: short runs flipping sessions in minutes.
Fortune Mouse buy-bonus pricing is being scrutinized harder than before.
Ganesha Gold sessions are shorter and sharper than ever in 2026.
The Tiger mystery card was the main the discord topic again this afternoon.
Withdrawal in minutes increased confidence in short sessions.
Wild Bandito remains popular among those seeking sequence explosion.
Low bank transfer entry is still attracting players who want to test without budget pressure.
bestes live roulette casino, https://jesuslovesnewlondon.com/das-beste-live-roulette-casino-spielerlebnis-der/ – Das optimale live roulette casino bietet zahlreiche MГ¶glichkeiten fГјr Spieler. Fesselnde Spiele, erfahrene Dealer und zahlreiche Auswahl an EinsatzmГ¶glichkeiten machen es herausragend. Spieler fГјhlen sich sicher und betroffen von der AtmosphГ¤re.
Best result of the afternoon came from rhythm reading, not impulsive bet hikes.
Live streams of Fortune Tiger trended again thanks to the more dynamic broadcast feel.
Caishen Wins hit-frequency talk has overtaken jackpot-chase talk.
Fortune Dragon stays strong but the race with Fortune Mouse is more balanced this week.
Mahjong Ways 2 hit-frequency talk has overtaken jackpot-chase talk.
Players combining gain target with stop loss closed the day more stable.
Demo mode of Fortune Ox is the entry point for risk-aware testers.
Cashout discipline determines monthly P&L more than entry skill.
Fortune Rabbit stays strong but the race with Fortune Dragon is more balanced this week.
Live streams of Fortune Mouse trended again thanks to the more dynamic broadcast feel.
Pre-session checklists are circulating across the forum groups.
Caishen Wins is back delivering full-screen wins, drawing attention peak hours.