Maison  >  Article  >  base de données  >  fonction de procédure mysql

fonction de procédure mysql

PHPz
PHPzoriginal
2023-05-08 13:01:38840parcourir

Les procédures et fonctions de MySQL peuvent être utilisées pour encapsuler une série d'instructions SQL afin de mettre en œuvre une logique métier complexe. Cet article présentera les procédures et fonctions de MySQL et les expliquera en termes de syntaxe, de flux d'exécution et d'exemples de programmes.

1. Procédure dans MySQL

La procédure est un mécanisme dans MySQL qui encapsule une série d'instructions SQL, similaires aux fonctions du langage C. Les procédures MySQL peuvent recevoir des paramètres d'entrée, renvoyer des paramètres de sortie et renvoyer des ensembles de résultats, elles sont donc très adaptées à l'encapsulation d'une logique métier complexe.

1. Syntaxe

La syntaxe de création d'un processus est la suivante :

CREATE PROCEDURE procedure_name ([IN | OUT | INOUT] parameter_name parameter_type)
BEGIN
   statements;
END;

Parmi eux, nom_procédure est le nom du processus, nom_paramètre est le traiter le paramètre entrant ou le paramètre de retour Le nom, type_paramètre est le type du paramètre, qui peut être n'importe quel type de données MySQL standard.

2. Processus d'exécution

Le flux du processus d'exécution est le suivant :

  • Le client lance une demande d'appel du processus ;
  • Le serveur MySQL obtient le nom et les paramètres du processus de requête et d'analyse
  • Le bloc de code du processus d'exécution MySQL renvoie le résultat au client.

3. Exemple de programme

Ce qui suit est un exemple de programme, comprenant les paramètres d'entrée et les paramètres de sortie :

CREATE PROCEDURE sum(IN a INT, IN b INT, OUT c INT)
BEGIN
   SET c = a + b;
END;

Exécutez ce qui précède programme Une fois la création réussie, le processus peut être appelé de la manière suivante :

CALL sum(1, 2, @result);
SELECT @result;

La signification du code ci-dessus est : appeler le processus somme, passer les paramètres 1 et 2, stocker la valeur de retour dans la variable utilisateur @result et affichez la valeur de @result via l'instruction SELECT.

2. Fonctions dans MySQL

Les fonctions sont un autre mécanisme dans MySQL qui encapsule une série d'instructions SQL et sont également similaires aux fonctions du langage C. Par rapport aux procédures, les fonctions sont plus légères. Elles ne prennent pas en charge les paramètres de sortie et les ensembles de résultats, mais uniquement les paramètres d'entrée et les valeurs de retour.

1. Syntaxe

La syntaxe de création d'une fonction est la suivante :

CREATE FUNCTION function_name ([parameter_name parameter_type])
RETURNS return_type
BEGIN
   statements;
   RETURN return_value;
END;

Où, function_name est le nom de la fonction, paramètre_name est l'entrée nom du paramètre de la fonction, type_paramètre est le type du paramètre, qui peut être n'importe quel type de données MySQL standard, et type_retour est le type de la valeur de retour de la fonction.

2. Processus d'exécution

Le processus d'exécution d'une fonction est similaire au processus d'exécution Le client initie une demande d'appel, et le serveur MySQL analyse la demande et exécute la. bloc de code de la fonction Enfin, les résultats sont renvoyés au client.

3. Exemple de programme

Ce qui suit est un exemple de programme, comprenant les paramètres d'entrée et les valeurs de retour :

CREATE FUNCTION cube(x INT)
RETURNS INT
BEGIN
   RETURN x * x * x;
END;

Une fois le programme ci-dessus créé avec succès , Cette fonction peut être appelée de la manière suivante :

SELECT cube(2);

La signification du code ci-dessus est : appelez la fonction cube, passez le paramètre 2, et le résultat renvoyé est 8.

3. Résumé

Lors du développement d'applications MySQL à grande échelle, les procédures et les fonctions peuvent nous aider à mieux organiser le code des instructions SQL et à améliorer l'efficacité du développement. La différence entre les deux est que le processus prend en charge les paramètres d'entrée, les paramètres de sortie et les ensembles de résultats, et convient à l'encapsulation de logique métier complexe, tandis que la fonction ne prend en charge que les paramètres d'entrée et les valeurs de retour et convient aux calculs mathématiques ou logiques simples. Qu'il s'agisse d'une procédure ou d'une fonction, vous pouvez l'apprendre et la maîtriser grâce à la syntaxe, au flux d'exécution et aux exemples de programmes.

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