什么是递归存储过程,为什么 MySQL 会限制递归?
mysqlmysqli database
如果存储过程调用自身,则称为递归。基本上,这个概念称为递归。MySQL 限制递归,因此错误不会那么严格。我们可以借助以下查询来检查此限制 −
mysql> Show variables LIKE '%recur%'; +------------------------+-------+ | Variable_name | Value | +------------------------+-------+ | max_sp_recursion_depth | 0 | +------------------------+-------+ 1 row in set (0.01 sec)
我们可以借助以下查询将此值更改为最高 255 −
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)
在编写程序时也可以扩展限制。