Procédures
Les procédures stockées sont semblables aux fonctions à la différence qu'une fonction sert à retourner un résultat et qu'une procédure effectue des opérations sans retourner de valeur. Cette différence n'existe pas dans la plupart des autres langages de programmation.
Nous pourrions simplifier l'enregistrement dans la table vehicule
avec une procédure qui ira créer automatiquement une entrée dans la table marque
si celle-ci n'existe pas déjà:
On spécifie le langage plpgsql
pour pouvoir effectuer une condition IF
, cela induit l'utilisation des instructions BEGIN
et END
. Le symbole $$
est utilisé ici pour remplacer le délimiteur habituel des requêtes pour servir de délimiteur pour la procédure.
On peut ensuite appeler la procédure avec CALL
:
Et enfin, voir le résultat dans la vue: