PL/SQL je procedurální nadstavba jazyka SQL od firmy Oracle, která je založená na programovacím jazyku Ada. Je velmi rozšířená a některé její prvky převzaly i jiné relační databáze. Základním stavebním prvkem PL/SQL je blok. Ty mohou být vnořeny jeden do druhého. Typicky jednotlivý blok spouští jednu logickou akci daného programu. Struktura bloku:

DECLARE
  /* Deklarace, která obsahuje proměnné, typy a lokální subprogramy */
BEGIN
  /* Výkonná sekce: zde se nachází procedury a kód v SQL */
  /* Tato sekce je jediná, která je v rámci zápisu povinná */
EXCEPTION
  /* Oblast, která zajišťuje zpracování výjimek: zde se zpracovávají chybové události. */
END;

Výhody použití PL/SQL

  • Nižší síťový traffic. Protože PL/SQL pracuje po celých blocích SQL výrazů, které zpracovává najednou, snižuje tak významně síťový traffic.
  • Podpora procedurálního jazyka. PL/SQL je vývojový nástroj pro manipulaci s daty, ale zároveň nabízí podmíněné kontroly, smyčky nebo větvení stejně jako jiné programovací jazyky.
  • Řešení chyb. PL/SQL umožňuje jednoduché řešení chyb a dává uživateli srozumitelné chybové zprávy, pokud k nějaké chybě dojde.
  • Deklarace proměnných. PL/SQL dává programátorovi kontrolu nad definicí proměnných a zároveň je zpřístupňuje v rámci bloku. Deklarované proměnné je následně možné použít v okamžiku zpracování dotazu.
  • Okamžitý výpočet. Výpočty jsou v PL/SQL velmi rychlé a efektivní, což vylepšuje transakční výkonnost. PL/SQL dokáže poslat celý blok příkazů a spustit ho v Oraclu najednou.
  • Přenositelnost aplikace. Aplikace, které jsou napsané pro PL/SQL jsou přenositelné do kteréhokoliv operačního systému. PL/SQL aplikace jsou nezávislým programem, který je možné spustit na jakémkoliv počítači.
  • Bezpečnost. PL/SQL je velmi bezpečný nástroj pro manipulaci, kontrolu, validaci a omezení přístupu k datům z SQL databáze.
  • Výkon. Použití PL/SQL může významně vylepšit výkon aplikace.
  • Zpracování dat. PL/SQL dokáže výborně zobrazovat větší počty záznamů z různých tabulek současně.

Nevýhody použití PL/SQL

  • Obecné chybové hlášky. Některé chybové hlášky ohledně syntaxi jsou příliš obecné a neobsahují žádnou indikaci přesného umístění problematického kódu.
  • Proprietární jazyk Oracle. PL/SQL je proprietární jazyk Oracle, což znamená, že pokud budete potřebovat databázi změnit k jinému dodavateli, je nutné všechny programy přepsat. Zároveň pokud používáte směs databází nebo vyvíjíte aplikace, které jsou spouštěny na různých databázích, budete muset buď spravovat velké množství zdrojového kódu, nebo zvolit jazyk k databázi neutrální jako je Java, VB nebo C a používat k přístupu do databáze API.
  • Špatné I/O funkcionality. PL/SQL nabízí velmi slabou podporu i/o ať už co se týče čtení a zápisu do souborů nebo čtení a zápis do uživatelského interface. PL/SQL je totiž primárně navrženo pro manipulaci informací v rámci databáze a ne pro zpracování souborů nebo komunikaci s uživatelem. Tyto operace jsou sice možné, ale jsou náročnější nežli v jiných jazycích.