Procedures en SQL

Qu'est-ce qu'une procédure ?

Les procédures en SQL, souvent appelées procédures stockées, sont des groupes de commandes SQL qui sont sauvegardées dans une base de données. Elles peuvent être exécutées plusieurs fois sur demande. De plus, elles peuvent être configurées avec des paramètres qui seront utilisés à l'intérieur de leur corps, produire des valeurs de sortie, ou les deux.

Syntaxe des procédures

La syntaxe pour créer une procédure varie selon le système de gestion de base de données (SGBD) utilisé. Prenons un exemple avec MySQL, où nous allons créer une procédure acceptant deux paramètres et retournant une valeur de sortie.

Exemple en MySQL

Voici comment définir et exécuter une procédure dans MySQL :

# Définir le délimiteur pour pouvoir utiliser des points-virgules dans la procédure
DELIMITER //

# Création de la procédure
CREATE PROCEDURE add_int (IN x INT, IN y INT, OUT z INT)
BEGIN  SELECT x + y INTO z;
END //

# Réinitialiser le délimiteur par défaut
DELIMITER ;

# Exécuter la procédure stockée
CALL add_int (5, 3, @z);

# Retourner le paramètre de sortie
SELECT @z AS Result;

Résultat

L'exécution de cette procédure produira la sortie suivante :

| Résultat | |----------| | 8 |