Créer une procédure stockée – MySQL

Dans ce tutoriel nous allons découvrir comment créer une procédure stockée sous MySQL. Sous MySQL, une procédure est un programme stocké dans lequel vous pouvez passer des paramètres. Il ne renvoie pas de valeur comme une fonction.
 
 

Syntaxe pour créer une procédure stockée :

La syntaxe pour créer une procédure dans MySQL est la suivante:

CREATE PROCEDURE ma_procedure (parameter1 type, parameter2 type, ...)
BEGIN
	instruction1;
	instruction2;
	...
	instruction3;
END;

 

Exemple :

La requête suivante renvoie toutes les lignes de la table clients:

SELECT * FROM Clients;


 
Si vous souhaitez enregistrer cette requête sur le serveur MySQL pour une exécution ultérieure, vous pouvez utiliser une procédure stockée.
 
 
L’instruction CREATE PROCEDURE crée une nouvelle procédure stockée qui encapsule la requête ci-dessus:

DELIMITER $
CREATE PROCEDURE GetClients()
BEGIN
	SELECT * FROM Clients;   
END$
DELIMITER ;


 
Par définition, une procédure stockée est un bloc de code stockées dans le serveur MySQL. Dans cet exemple, nous venons de créer une procédure stockée appelée GetClients().

Une fois que vous avez enregistré la procédure stockée, vous pouvez l’invoquer à l’aide de l’instruction CALL:

CALL GetClients();


 
La procédure stockée renvoie le même résultat que la requête.
Questions techniques sur MYSQLQuestions techniques sur MYSQL – Partie 1Nous avons divisé cette collection de questions techniques sur MYSQL sous sept chapitres là, c’est la premiere, puis vous trouverez la deuxième partie, la troisième…Lire plus

Partagez cet article

Une réflexion sur “Créer une procédure stockée – MySQL

  • Avatar
    décembre 20, 2019 à 4:15
    Permalien

    Bonjour à tous.

    Besoin de faire un schéma relationnel et son MCD. Quelques astuces pour m’aider? C’est dans le cadre de la création d’une base de donnée de la numérisation d’un cahier de suivi des apprents

    Merci bien!!!

    Répondre

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *