Maison >base de données >tutoriel mysql >Un article expliquant les procédures stockées dans MySQL

Un article expliquant les procédures stockées dans MySQL

PHPz
PHPzoriginal
2023-04-17 15:26:04621parcourir

La procédure stockée est une technologie couramment utilisée dans les systèmes de bases de données. Son essence est d'améliorer les performances des systèmes d'application de bases de données, de réduire la difficulté de développement des systèmes d'application et d'améliorer la sécurité. MySQL est un système de gestion de bases de données relationnelles populaire qui prend en charge les procédures stockées.

Introduction aux procédures stockées MySQL
La procédure stockée MySQL est une instruction SQL précompilée et stockée sur le serveur MySQL. Elle peut accepter des paramètres, utiliser des variables, contenir des structures de contrôle, implémenter des opérations logiques complexes et renvoyer des résultats. Les avantages des procédures stockées incluent :

  1. Améliorer les performances des applications : les procédures stockées sont compilées et stockées dans la base de données et peuvent être appelées à plusieurs reprises par plusieurs applications, réduisant ainsi le temps de compilation et d'interprétation répétées du programme.
  2. Amélioration de la sécurité des applications : les procédures stockées peuvent restreindre l'accès aux tables et autoriser uniquement l'accès aux utilisateurs qui utilisent la procédure stockée.
  3. Simplifiez l'écriture des applications : les applications n'ont pas besoin d'écrire des instructions SQL complexes, elles doivent uniquement appeler des procédures stockées.
  4. Réduire la charge du serveur : le processus stocké est exécuté côté serveur, ce qui peut réduire la pression de la transmission des données sur le réseau et réduire la charge sur le client.

Le format syntaxique de la procédure stockée MySQL
Le format syntaxique de la procédure stockée MySQL est le suivant :

CREATE PROCEDURE procedure_name ([IN | OUT | INOUT] parameter_name datatype[(size)]) [NOT DEMETER] routine_body

Où :

CREATE PROCEDURE signifie créer une procédure stockée.

procedure_name est le nom de la procédure stockée et doit être unique.

IN | OUT | INOUT est la méthode de passage des paramètres, paramètres facultatifs. IN représente les paramètres d'entrée (par défaut), OUT représente les paramètres de sortie et INOUT représente à la fois les paramètres d'entrée et les paramètres de sortie.

parameter_name est le nom du paramètre et doit être unique.

datatype[(size)] est le type de données et la longueur du paramètre et peut être omis.

NOT DEMETER est facultatif, indiquant que la procédure stockée ne peut pas utiliser de données dans d'autres transactions.

routine_body est le corps principal de la procédure stockée, comprenant les instructions SQL et les structures de contrôle.

Exemple de procédure stockée MySQL
Ce qui suit est un exemple de procédure stockée MySQL. Sa fonction est de mettre en œuvre des opérations d'insertion, de suppression, de modification et d'interrogation des informations sur les étudiants.

CREATE PROCEDURE student_info(IN s_add INT, IN s_name VARCHAR(20), IN s_age INT, IN s_gender VARCHAR(10), IN s_id INT, OUT result INT)
BEGIN
DECLARE flag INT DEFAULT 0;
IF(s_add = 1) THEN
    INSERT INTO students VALUES(s_id, s_name, s_age, s_gender);
ELSEIF(s_add = 2) THEN
    UPDATE students SET name = s_name, age = s_age, gender = s_gender WHERE id = s_id;
ELSEIF(s_add = 3) THEN
    DELETE FROM students WHERE id = s_id;
ELSEIF(s_add = 4) THEN
    SELECT * FROM students WHERE name = s_name;
ELSE
    SET flag = 1;
END IF;
IF(flag = 0) THEN
    SET result = 0;
ELSE
    SET result = 1;
END IF;
END

Grâce au processus de stockage ci-dessus, vous pouvez ajouter, supprimer, modifier et vérifier les informations sur les étudiants. Lors de l'appel de la procédure stockée, vous devez transmettre les paramètres s_add (type d'opération), s_name (nom), s_age (âge), s_gender (sexe), s_id (ID d'étudiant) et obtenir le résultat du paramètre de sortie (résultat de l'exécution). .

Résumé
La procédure stockée MySQL est une technologie d'application de base de données efficace qui peut améliorer les performances et la sécurité des applications, simplifier l'écriture d'applications et réduire la charge du serveur. Grâce à l'introduction ci-dessus, nous pouvons comprendre la syntaxe de base et l'utilisation des procédures stockées MySQL. J'espère que cela pourra être utile à tout le monde.

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