SQL vs PL SQL
SQL (Structured Query Language) är standardspråket för att skriva ingångsrelationsdatabaser. SQL är enkla satser, som gör det möjligt att hämta, infoga, ta bort, uppdatera poster efter användarens behov. Det är helt enkelt ett dataorienterat språk för att välja och manipulera datauppsättningar. PL SQL (Procedural Language/Structured Query Language) är ett procedurförlängningsspråk för datainmatning och manipulering av Oracle.
“PL/SQL, Oracles procedurförlängning av SQL, är ett avancerat fjärde generationens programmeringsspråk (4GL). Den erbjuder moderna funktioner som datainkapsling, överbelastning, insamlingstyper, undantagshantering och informationsdöljning. PL/SQL erbjuder också sömlös SQL-åtkomst, tät integration med Oracle-servern och verktyg, portabilitet och säkerhet.”
SQL
Structured query language (SQL) uttalas som "sequel" är ett databasdatorspråk utformat för att hantera data i relationsdatabashanteringssystem (RDBMS), och ursprungligen baserat på relationalgebra.
Grundläggande omfattning av SQL är att infoga data och utföra uppdatering, radering, skapande av scheman, schemamodifiering och dataåtkomstkontroll mot databaser.
SQL har element, uppdelade i följande:
Frågor – Hämta data baserat på specifika kriterier. Det finns få nyckelord som kan användas i frågor. (Välj, Från, Var, Ha, Gruppera efter och beställ efter)
t.ex.: VÄLJFRÅN tabell 1 WHERE kolumn1 > villkor ORDER BY kolumn2;
Uttalanden – som kan styra transaktioner, programflöde, anslutningar, sessioner eller diagnostik
Uttryck – som kan producera antingen;
Skalära värden
Tabeller som består av kolumner och rader med data
Predikat -Ange villkor som kan utvärderas till SQL Boolean (sant/falskt/okänt)
Klausuler – Beståndsdelar i uttalanden och frågor
PL/SQL
PL/SQL (Procedural Language/Structured Query Language) är Oracle Corporations procedurförlängningsspråk för SQL och Oracles relationsdatabasen. PL/SQL stöder variabler, villkor, loopar, arrayer, undantag. PL/SQL-kodbehållare kan i huvudsak anpassas till Oracle-databaserna. Mjukvaruutvecklare kan därför implantera PL/SQL-enheter med funktionalitet i databasen direkt.
PL/SQL-programenheter kan definieras enligt följande:
Anonyma blockeringar
Former grunden för den enklaste PL/SQL-koden
Funktioner
Funktioner är en samling SQL- och PL/SQL-satser. Funktioner utför en uppgift och bör returnera ett värde till den anropande miljön.
Procedurer
Procedurer är likadana som funktioner. Procedurer kan också utföras för att utföra arbete. Procedurer kan inte användas i en SQL-sats, kan returnera flera värden. Dessutom kan funktioner anropas från SQL, medan procedurer inte kan.
paket
Användning av paket är återanvändning av kod. Paket är grupper av teoretiskt sammanlänkade funktioner, procedurer, variabel, PL/SQL-tabeller och post TYPE-satser, konstanter & markörer etc… Paket har vanligtvis två delar, en specifikation och en body
Två fördelar med paket inkluderar:
Modular approach, inkapsling av affärslogik
Att använda paketvariabler kan deklarera i sessionsnivåer
Typer av variabler i PL/SQL
Variables
Numeriska variabler
Teckenvariabler
Datumvariabler
Datatyper för specifika kolumner
Skillnaden mellan SQL och PL/SQL
SQL är dataorienterat språk för att välja och manipulera data men PL SQL är ett procedurspråk för att skapa applikationer.
SQL kör en sats åt gången, medan SQL-kodblock i PL kan köras.
SQL är deklarativ där som PL SQL är processuell.
SQL används för att skriva frågor, Data Manipulation Language (DML) och Data Definition Language (DDL) medan PL SQL används för att skriva programblock, triggers, funktioner, procedurer och paket.
Recap:
SQL är ett strukturerat frågespråk. I SQL används olika frågor för att hantera databasen på ett förenklat sätt. PL/SQL är ett procedurspråk som innehåller olika typer av variabler, funktioner och procedurer. SQL tillåter utvecklare att utfärda en enda fråga eller exekvera enstaka infogning/uppdatering/borttagning åt gången, medan PL/SQL tillåter att skriva ett komplett program för att göra flera val/infogningar/uppdateringar/borttagningar åt gången. SQL är ett enkelt dataorienterat språk medan PL/SQL programmeringsspråk.