PL/pgSQL | |
---|---|
Prozedurale Erweiterung von SQL | |
Basisdaten | |
Paradigmen: | prozedural |
Erscheinungsjahr: | 30. Oktober 1998 |
Entwickler: | PostgreSQL-Team |
Aktuelle Version: | 12 (3. Oktober 2019) |
Typisierung: | stark, statisch, explizit |
Beeinflusst von: | PL/SQL, Ada |
Betriebssystem: | Unix-Derivate, Linux, Windows |
Lizenz: | PostgreSQL Lizenz[1] |
postgresql.org |
PL/pgSQL (Procedural Language/PostgreSQL Structured Query Language) ist eine prozedurale Sprache der objektrelationalen Datenbank PostgreSQL. Die Syntax von PL/pgSQL ist wie bei PL/SQL auf Oracle-Datenbanksystemen stark an Ada angelehnt.
PL/pgSQL wurde zur Erweiterung des SQL-Funktionsumfangs eingeführt, dabei kann PL/pgSQL-Code als Stored Procedure in der Datenbank selbst gespeichert sein. Unterstützt werden Variablen, Bedingungen, Schleifen, Funktionen, Datenbankcursor und Ausnahmebehandlungen. PL/pgSQL-Code kann sowohl aus SQL-Kommandos als auch aus Datenbanktriggern heraus aufgerufen werden.
Mit Hilfe der prozeduralen Erweiterung lassen sich SQL-Befehle direkt im PostgreSQL-Server dynamisch erzeugen und müssen nicht mehr als Text über eine Datenbankschnittstelle übergeben werden, wie dies z. B. bei ODBC, JDBC und OLE DB der Fall ist, sondern können direkt in der Datenbank erstellt und ausgeführt werden.