Rumah  >  Artikel  >  pangkalan data  >  Apakah prosedur tersimpan rekursif dan mengapa MySQL mengehadkan rekursi?

Apakah prosedur tersimpan rekursif dan mengapa MySQL mengehadkan rekursi?

王林
王林ke hadapan
2023-09-02 11:45:02708semak imbas

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

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!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam