Heim  >  Artikel  >  Datenbank  >  Was ist eine rekursive gespeicherte Prozedur und warum begrenzt MySQL die Rekursion?

Was ist eine rekursive gespeicherte Prozedur und warum begrenzt MySQL die Rekursion?

王林
王林nach vorne
2023-09-02 11:45:02708Durchsuche

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

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!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen