Langage PL/pgSQL PL/pgSQL

Le langage PL/pgSQL est un module optionnel de PostgreSQL, livré avec PostgreSQL, et pré-installé en tant qu’extension dans les bases de données. Il s’agit d’un langage interprété, utilisé dans une fonction ou une procédure, permettant de manipuler les données à travers le langage SQL. En effet, ce dernier est directement utilisable dans le code PL/pgSQL.

L’exemple suivant réécrit l’exemple de la fonction SQL précédente, avec le langage PL/pgSQL :

CREATE OR REPLACE FUNCTION tickets.concat_artiste 
 ( art_nom1 text, art_nom2 text 
  , sep text default ' / ' ) 
 RETURNS text 
 LANGUAGE plpgsql 
 STRICT IMMUTABLE 
AS $$ 
DECLARE 
 v_ret text ; 
BEGIN 
 v_ret := art_nom1 || sep || art_nom2 ; 
 
 return v_ret ; 
END 
$$ ; 

Le code est composé de deux blocs :

  • le bloc DECLARE permet de déclarer des variables internes à la fonction,

  • le bloc BEGIN débute le code exécutable, qui se termine par l’instruction END.

Le code de la fonction affecte le résultat de la concaténation des chaînes de caractères dans la variable v_ret, puis cette variable est utilisée par l’instruction return à la fin de la fonction.

1. Syntaxe du langage

Le langage PL/pgSQL est très proche d’autres langages procéduraux, ce qui permet...

Pour consulter la suite, découvrez le livre suivant :
couv_RIPOST.png
60-signet.svg
En version papier
20-ecran_lettre.svg
En version numérique
41-logo_abonnement.svg
En illimité avec l'abonnement ENI
130-boutique.svg
Sur la boutique officielle ENI
Précédent
Fonctions et procédures
Suivant
Langage PL/Python