"Procédures stockées" exécutables

L'instruction EXECUTE PROCEDURE est le style d'appel de procédure stockée le plus couramment utilisé. pour modifier certaines données. Leur code ne contient pas l'instruction SUSPEND. Ces procédures stockées peuvent renvoyer un ensemble de données ne comprenant pas plus d'une chaîne de caractères. Cet ensemble peut être passé aux variables d'une autre procédure (appelante) en utilisant la clause RETURNING_VALUES. Les interfaces client ont généralement des wrappers API qui peuvent extraire les valeurs de sortie dans un tampon d'une seule ligne lorsque la procédure est appelée via EXECUTE PROCEDURE dans DSQL.

Lorsqu'un autre type de procédure (procédures sélectives) est appelé avec EXECUTE PROCEDURE, seule la première procédure est appelée. du jeu de résultats sera retourné, même si cette procédure est susceptible de retourner un résultat de plusieurs lignes. Les procédures stockées "sélectives" doivent être appelées avec l'instruction SELECT, auquel cas elles se comportent comme des tables virtuelles.

Note
  • Dans PSQL et DSQL, les paramètres d'entrée peuvent être n'importe quelle expression compatible avec le type ;

  • Bien que les parenthèses pour séparer la liste des paramètres à passer soient facultatives après le nom de la procédure stockée, il est conseillé de les utiliser ;

  • La clause RETURNING_VALUES n'est disponible que dans PSQL.

Example 1. Utilisation de l'instruction `EXECUTE PROCEDURE' dans PSQL
EXECUTE PROCEDURE MakeFullName(:First_Name, :Middle_Name, :Last_Name)
RETURNING_VALUES :FullName;

Dans cet instruction, l'utilisation des deux points (":") pour les paramètres d'entrée et de sortie est facultative.

Il est permis d'utiliser des expressions comme paramètres.

EXECUTE PROCEDURE MakeFullName
   ('Mr./Mrs. ' || First_Name, Middle_Name, upper(Last_Name))
RETURNING_VALUES FullName;
Example 2. Appel de l'instruction EXECUTE PROCEDURE dans isql.
EXECUTE PROCEDURE MakeFullName
  'J', 'Edgar', 'Hoover';