儲存過程中遞迴是什麼?MySQL 為什麼限制遞迴?


儲存過程如果呼叫它自己,則稱作遞迴儲存過程。從本質上講,這個概念叫作遞迴。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)

同時在編寫該過程時也可以擴大限制。

更新於: 22-6 月 2020

超過 1k 的瀏覽量

開啟您的 職業生涯

完成課程可獲得證書

開始
廣告
© . All rights reserved.