Jika prosedur tersimpan memanggil dirinya sendiri, prosedur tersimpan dipanggil rekursif. Pada asasnya, konsep ini dipanggil rekursi. MySQL mengehadkan rekursi supaya ralat tidak seketat. Kita boleh menyemak had ini dengan bantuan pertanyaan berikut -
mysql> Show variables LIKE '%recur%'; +------------------------+-------+ | Variable_name | Value | +------------------------+-------+ | max_sp_recursion_depth | 0 | +------------------------+-------+ 1 row in set (0.01 sec)
Kita boleh menukar nilai ini kepada 255 dengan bantuan pertanyaan berikut -
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)
Had ini juga boleh dipanjangkan semasa menulis program.
Atas ialah kandungan terperinci Apakah prosedur tersimpan rekursif dan mengapa MySQL mengehadkan rekursi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!