用於呼叫多個儲存過程的 MySQL 步驟?


我們先來看語法,其中從儲存過程呼叫多個過程 −

DELIMITER //
CREATE PROCEDURE yourProcedureName()
BEGIN
   CALL yourStoredProcedureName1();
   CALL yourStoredProcedureName2();
   .
   .
   N
END
//
DELIMITER //

我們來實現上述語法以呼叫多個儲存過程。

以下是建立第一個儲存過程的查詢 −

mysql> DELIMITER //
mysql> CREATE PROCEDURE hello_message()
   -> BEGIN
   -> SELECT 'HELLO WORLD !!';
   -> END
   -> //
Query OK, 0 rows affected (0.19 sec)

建立第二個儲存過程的查詢如下 −

mysql> CREATE PROCEDURE hi_message()
   -> BEGIN
   -> SELECT 'HI !!!!';
   -> END
   -> //
Query OK, 0 rows affected (0.11 sec)

mysql> DELIMITER ;

這是建立新過程以呼叫多個儲存過程的查詢 −

mysql> DELIMITER //
mysql> CREATE PROCEDURE call_all_stored_procedure()
   -> BEGIN
   -> CALL hello_message();
   -> CALL hi_message();
   -> END
   -> //
Query OK, 0 rows affected (0.26 sec)

mysql> DELIMITER ;

現在您可以呼叫主儲存過程 −

mysql> call call_all_stored_procedure();

這將生成以下輸出 −

+----------------+
| HELLO WORLD !! |
+----------------+
| HELLO WORLD !! |
+----------------+
1 row in set (0.06 sec)

+---------+
| HI !!!! |
+---------+
| HI !!!! |
+---------+
1 row in set (0.06 sec)
Query OK, 0 rows affected (0.08 sec)

更新於: 12-11-2019

984 次瀏覽

開啟你的 職業

透過完成本課程獲得認證

開始
廣告