Wenn sich eine gespeicherte Prozedur selbst aufruft, wird die gespeicherte Prozedur als rekursiv bezeichnet. Im Grunde wird dieses Konzept Rekursion genannt. MySQL begrenzt die Rekursion, sodass Fehler nicht so streng sind. Wir können dieses Limit mit Hilfe der folgenden Abfrage überprüfen –
mysql> Show variables LIKE '%recur%'; +------------------------+-------+ | Variable_name | Value | +------------------------+-------+ | max_sp_recursion_depth | 0 | +------------------------+-------+ 1 row in set (0.01 sec)
Wir können diesen Wert mit Hilfe der folgenden Abfrage auf 255 ändern –
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)
Dieses Limit kann auch beim Schreiben des Programms erweitert werden.
Das obige ist der detaillierte Inhalt vonWas ist eine rekursive gespeicherte Prozedur und warum begrenzt MySQL die Rekursion?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!