Maison >base de données >tutoriel mysql >Exécuter la procédure stockée MySQL

Exécuter la procédure stockée MySQL

王林
王林original
2023-05-08 21:04:362790parcourir

Exécuter les procédures stockées MySQL

Les procédures stockées MySQL sont un ensemble d'instructions SQL précompilées et stockées sur le serveur. Ils peuvent accepter des paramètres d'entrée et renvoyer des paramètres de sortie, ou ils peuvent exécuter des requêtes SQL et produire des ensembles de résultats. L'exécution de procédures stockées MySQL peut grandement simplifier le processus de développement d'applications de base de données et améliorer l'efficacité de la gestion des données. Vous trouverez ci-dessous les étapes pour exécuter une procédure stockée MySQL.

Étape 1 : Créer une procédure stockée

Dans MySQL, vous pouvez utiliser l'instruction create procédure pour créer une procédure stockée. La syntaxe est la suivante :

CREATE [DEFINER = { user | CURRENT_USER }]

PROCEDURE sp_name ([proc_parameter[,...]])
[characteristic ...] routine_body

Parmi eux, DEFINER précise le nom d'utilisateur du créateur de la procédure stockée. Si DEFIER n'est pas spécifié, l'utilisateur actuel est utilisé par défaut. sp_name est le nom de la procédure stockée et proc_parameter spécifie les paramètres d'entrée et de sortie de la procédure stockée. La caractéristique inclut les attributs de la procédure stockée, tels que le type de langage, la méthode de modification des données, etc. routine_body est une collection d'instructions SQL exécutées par la procédure stockée.

Par exemple, créez une simple procédure stockée MySQL pour interroger les informations d'un employé spécifié. Il nécessite un identifiant d'employé comme paramètre d'entrée et renvoie des informations telles que le nom de l'employé, le nom du service et le salaire. L'instruction DDL est la suivante : reCreate Procedure Get_employee_info (dans Emp_id InT)

Begin

select Emp_name, dept_name, salaires
from Employees, Departments
où Empplayeees .emp_id = EMP_ID et
DEPARTMENTS.DEPT_ID = Employees.Dept_id ;
Dans cet exemple, nous définissons un paramètre d'entrée emp_id, qui spécifie l'ID de l'employé pour lequel les informations doivent être interrogées. La procédure stockée utilise une instruction SQL SELECT pour interroger des informations telles que le nom, le nom du service et le salaire et les renvoie à l'appelant.

Étape 2 : Exécuter la procédure stockée

Pour exécuter la procédure stockée MySQL, vous pouvez utiliser l'instruction CALL. La syntaxe est la suivante :

CALL sp_name(argument_list);

où sp_name est le nom de la procédure stockée et argument_list est la liste de paramètres transmise à la procédure stockée. Dans notre exemple, l'instruction suivante peut être utilisée pour exécuter la procédure stockée :

CALL get_employee_info(1001);

Cela interrogera les informations de l'employé avec l'ID d'employé 1001 et renverra des informations telles que le nom, le nom du service et le salaire. à l'appelant qui.

Si la procédure stockée exécute simplement certaines instructions SQL sans renvoyer de résultats, vous pouvez utiliser la syntaxe suivante pour exécuter la procédure stockée :

EXEC sp_name;

Par exemple, vous trouverez ci-dessous une simple procédure stockée MySQL pour spécifier les employés d'un service. les salaires ont doublé. Il le fait en utilisant l'instruction UPDATE, qui ne renvoie aucun résultat :

CREATE PROCEDURE double_salary(IN dept_name VARCHAR(50))

BEGIN

UPDATE employés, départements

SET salaire = salaire * 2

WHERE employés.dept_id = départements.dept_id AND
departments.dept_name = dept_name;
END;

Pour exécuter cette procédure stockée, vous pouvez utiliser l'instruction suivante :

EXEC double_salary('Sales');

Cela doublera le salaire de tous les employés du service commercial.

Étape 3 : Supprimer la procédure stockée

Si la procédure stockée n'est plus nécessaire, vous pouvez utiliser l'instruction DROP PROCEDURE pour la supprimer. La syntaxe est la suivante :

DROP PROCEDURE sp_name;

où sp_name est le nom de la procédure stockée à supprimer.

Résumé

Les procédures stockées MySQL sont un outil de développement d'applications de base de données très puissant qui peut grandement simplifier le travail de codage et de débogage. En définissant des procédures stockées, le code SQL peut être encapsulé dans des fonctions ou des procédures, réduisant ainsi la charge de travail liée à l'écriture répétée d'instructions SQL et améliorant la réutilisabilité et la maintenabilité du code. Par conséquent, il est très important que les développeurs ayant une certaine connaissance de MySQL maîtrisent l’utilisation des procédures stockées.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn