Computer >> Máy Tính >  >> Lập trình >> MySQL

Thủ tục MySQL để gọi nhiều thủ tục?

Đầu tiên chúng ta hãy xem cú pháp, trong đó chúng ta đang gọi nhiều thủ tục từ một thủ tục được lưu trữ -

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

Hãy để chúng tôi triển khai cú pháp trên để gọi nhiều thủ tục được lưu trữ.

Sau đây là truy vấn để tạo thủ tục được lưu trữ đầu tiên -

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

Truy vấn để tạo thủ tục được lưu trữ thứ hai như sau -

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

mysql> DELIMITER ;

Đây là truy vấn để tạo một thủ tục mới để gọi nhiều thủ tục được lưu trữ -

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 ;

Bây giờ bạn có thể gọi thủ tục được lưu trữ chính -

mysql> call call_all_stored_procedure();

Điều này sẽ tạo ra kết quả sau -

+----------------+
| 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)