Maison >base de données >tutoriel mysql >Comment utiliser les fonctions stockées dans MySQL ?

Comment utiliser les fonctions stockées dans MySQL ?

藏色散人
藏色散人original
2019-05-20 13:35:162497parcourir

Comment utiliser les fonctions stockées dans MySQL ?

Qu'est-ce qu'une fonction stockée :

Encapsule un morceau de code SQL pour compléter une fonction spécifique et renvoyer le résultat.

Syntaxe de la fonction stockée :

  create function 函数([函数参数[,….]]) Returns 返回类型
  Begin
    If(
      Return (返回的数据)
    Else 
      Return (返回的数据)
    end if;
  end;

Par exemple :

 create function count_news(hits int) returns int

Différent des paramètres de retour d'une procédure stockée, les fonctions stockées n'ont pas besoin d'être déclarées directement lors de la définition Quelle variable est le paramètre de retour ? Au lieu de cela, les retours sont utilisés pour déclarer le type de données du paramètre de retour. Le paramètre de retour est exprimé dans le corps de la fonction en utilisant return pour renvoyer la variable de données à renvoyer. Ce qu'il faut noter est :
Les fonctions stockées ne prennent en charge que les paramètres d'entrée, et il n'y a pas d'IN ou INOUT avant les paramètres d'entrée.

Restrictions dans les fonctions stockées

Les instructions de contrôle de flux (IF, CASE, WHILE, LOOP, WHILE, REPEAT, LEAVE, ITERATE) sont également légales
La déclaration de variable (DECLARE) et l'affectation (SET) sont légales. Les déclarations conditionnelles sont autorisées.
Les déclarations de gestion des exceptions sont également autorisées
Mais rappelez-vous ici que la fonction a des restrictions : la table n'est pas accessible dans la fonction. Par conséquent, il est illégal d'utiliser l'instruction suivante dans la fonction.

ALTER 'CACHE INDEX' CALL COMMIT CREATE DELETE 
DROP 'FLUSH PRIVILEGES' GRANT INSERT KILL 
LOCK OPTIMIZE REPAIR REPLACE REVOKE 
ROLLBACK SAVEPOINT 'SELECT FROM table' 
'SET system variable' 'SET TRANSACTION' 
SHOW 'START TRANSACTION' TRUNCATE UPDATE

Recommandations d'apprentissage associées :

base de données mysql

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