SQL vs PL SQL
SQL (struktureeritud päringukeel) on sisestusrelatsiooniandmebaaside kirjutamise standardkeel. SQL on lihtsad laused, mis võimaldavad kirjeid hankida, lisada, kustutada, uuendada vastav alt kasutaja vajadustele. See on lihts alt andmetele orienteeritud keel andmete kogumi valimiseks ja manipuleerimiseks. PL SQL (Procedural Language/Structured Query Language) on protseduurilaienduskeel andmete sisestamiseks ja töötlemiseks Oracle'i poolt.
„PL/SQL, Oracle'i SQL-i protseduuriline laiendus, on täiustatud neljanda põlvkonna programmeerimiskeel (4GL). See pakub kaasaegseid funktsioone, nagu andmete kapseldamine, ülekoormus, kogumise tüübid, erandite käsitlemine ja teabe peitmine. PL/SQL pakub ka sujuvat SQL-juurdepääsu, tihedat integratsiooni Oracle'i serveri ja tööriistadega, kaasaskantavust ja turvalisust.”
SQL
Struktureeritud päringukeel (SQL), mida hääldatakse kui "järg", on andmebaasi arvutikeel, mis on loodud andmete haldamiseks relatsiooniliste andmebaaside haldussüsteemides (RDBMS) ja põhines algselt relatsioonialgebral.
SQL-i põhivaldkond on andmete sisestamine ja värskendamine, kustutamine, skeemi loomine, skeemi muutmine ja andmetele juurdepääsu kontroll andmebaaside vastu.
SQL-il on elemente, mis on jagatud järgmisteks osadeks:
päringud – hankige andmeid konkreetsete kriteeriumide alusel. Märksõnu, mida saab päringutes kasutada, on vähe. (Valige, Alates, Kus, Omamine, Rühmitamine ja järjestamine)
nt: SELECTFROM table1 WHERE veerg1 > tingimus ORDER BY veerg2;
Avaldused – need võivad juhtida tehinguid, programmivoogu, ühendusi, seansse või diagnostikat
Väljendid – see võib tekitada kas;
Skalaarväärtused
Tabelid, mis koosnevad andmete veergudest ja ridadest
Predikaadid – määrake tingimused, mida saab hinnata SQL-i tõeväärtuseks (tõene/väär/tundmatu)
Klausid – avalduste ja päringute koostisosad
PL/SQL
PL/SQL (Procedural Language / Structured Query Language) on Oracle Corporationi protseduuriline laienduskeel SQL-i ja Oracle'i relatsiooniandmebaasi jaoks. PL/SQL toetab muutujaid, tingimusi, silmuseid, massiive ja erandeid. PL/SQL-i sisuliselt saab Oracle'i andmebaasidesse lisada koodikonteinerid. Tarkvaraarendajad saavad seetõttu PL/SQL-i funktsionaalsusüksusi otse andmebaasi implanteerida.
PL/SQL programmiühikuid saab defineerida järgmiselt:
Anonüümsed plokid
Moodustab kõige lihtsama PL/SQL koodi aluse
Funktsioonid
Funktsioonid on SQL- ja PL/SQL-lausete kogu. Funktsioonid täidavad ülesande ja peaksid kutsuvasse keskkonda väärtuse tagastama.
Protseduurid
Protseduurid on funktsioonidega sarnased. Protseduure saab läbi viia ka töö tegemiseks. Protseduure ei saa SQL-lauses kasutada, need võivad tagastada mitu väärtust. Lisaks saab funktsioone kutsuda SQL-ist, protseduure aga mitte.
Paketid
Pakettide kasutamine on koodi taaskasutamine. Paketid on teoreetiliselt seotud funktsioonide, protseduuride, muutujate, PL/SQL tabelite ja kirje TYPE lausete, konstantide ja kursorite jne rühmad… Paketid koosnevad tavaliselt kahest osast, spetsifikatsioonist ja kehast
Paketite kaks eelist on järgmised:
Modulaarne lähenemine, äriloogika kapseldumine
Pakettide kasutamisel saab muutujaid seansitasemetel deklareerida
Muutujate tüübid PL/SQL-is
Muutujad
Arvmuutujad
Tähemärgimuutujad
Kuupäevamuutujad
Konkreetsete veergude andmetüübid
Erinevus SQL-i ja PL/SQL-i vahel
SQL on andmetele orienteeritud keel andmete valimiseks ja töötlemiseks, kuid PL SQL on protseduuriline keel rakenduste loomiseks.
SQL käivitab ühe lause korraga, samas kui PL-is SQL-i koodiplokki saab käivitada.
SQL on deklaratiivne, samas kui PL SQL on protseduuriline.
SQL-i kasutatakse päringute, andmete manipuleerimiskeele (DML) ja andmedefineerimiskeele (DDL) kirjutamiseks, samas kui PL SQL-i kasutatakse programmiplokkide, päästikute, funktsioonide, protseduuride ja pakettide kirjutamiseks.
Kokkuvõte:
SQL on struktureeritud päringukeel. SQL-is kasutatakse andmebaasi lihtsustatud haldamiseks erinevaid päringuid. PL/SQL on protseduurikeel, mis sisaldab erinevat tüüpi muutujaid, funktsioone ja protseduure. SQL võimaldab arendajal väljastada ühe päringu või käivitada ühe lisamise/värskendamise/kustutamise korraga, samas kui PL/SQL võimaldab kirjutada terve programmi, et saaks korraga teha mitu valikut/lisamist/värskendust/kustutamist. SQL on lihtne andmetele orienteeritud keel, samas kui PL/SQL programmeerimiskeel.