PL/pgSQL
PL/pgSQL | ||||
---|---|---|---|---|
Paradigma | imperatief, logisch | |||
Verschenen | Juli 1998 | |||
Typesysteem | statisch | |||
Dialecten | PL/SQL | |||
Beïnvloed door | Ada, Pascal | |||
Invloed op | PL/SQL | |||
Besturingssysteem | Multiplatform | |||
Licentie | The PostgreSQL Licence | |||
Website | PL/pgSQL - SQL Procedural Language | |||
|
PL/pgSQL (Procedural Language/PostgreSQL) is een programmeertaal en beschikbaar in PostgreSQL RDBMS (sinds versie 6.4). Deze taal wordt gebruikt voor het schrijven van opgeslagen procedures, triggers. PL/pgSQL is de procedurele uitbreiding van SQL. Dit maakt het mogelijk om naast SQL variabelen te gebruiken en keuzeconstructies (if, case
), herhalingsconstructies en exception handling te implementeren. PL/pgSQL lijkt enigszins op de PL/SQL taal van Oracle.
Voordeel van het gebruik van PL/pgSQL is minder dataverkeer tussen client (bijvoorbeeld een php webserver) en databaseserver. Daarnaast wordt er voor iedere SQL-query in een PL/pgSQL-functie een uitvoerplan opgeslagen. Beide leveren tijdwinst op. Daarnaast is er minder kans op SQL-injections.
PostgreSQL ondersteunt ook andere Procedural languages. In de standaard distributie zit bijvoorbeeld: PL/Perl en PL/Python. Als externe talen kan men onder andere Javascript (PLV8), PHP en Java toevoegen. De PostgreSQL taal PL/SQL (niet te verwarren met de Oracle taal met dezelfde naam) is strikt genomen geen Procedural Language.