Maison  >  Article  >  base de données  >  Qu'est-ce qu'une procédure stockée récursive et pourquoi MySQL limite-t-il la récursion ?

Qu'est-ce qu'une procédure stockée récursive et pourquoi MySQL limite-t-il la récursion ?

王林
王林avant
2023-09-02 11:45:02712parcourir

什么是递归存储过程以及为什么 MySQL 限制递归?

Si une procédure stockée s'appelle elle-même, la procédure stockée est dite récursive. Fondamentalement, ce concept s'appelle la récursivité. MySQL limite la récursivité afin que les erreurs ne soient pas aussi strictes. Nous pouvons vérifier cette limite à l'aide de la requête suivante -

mysql> Show variables LIKE '%recur%';
+------------------------+-------+
| Variable_name          | Value |
+------------------------+-------+
| max_sp_recursion_depth |   0   |
+------------------------+-------+
1 row in set (0.01 sec)

Nous pouvons changer cette valeur à 255 à l'aide de la requête suivante -

mysql> SET @@GLOBAL.max_sp_recursion_depth = 255//
Query OK, 0 rows affected (0.00 sec)

mysql> Show variables LIKE '%recur%'//
+------------------------+-------+
| Variable_name          | Value |
+------------------------+-------+
| max_sp_recursion_depth | 255   |
+------------------------+-------+
1 row in set (0.01 sec)

Cette limite peut également être étendue lors de l'écriture du programme.

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:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer