在MySQL中,創建存儲過程需要使用CREATE PROCEDURE
語句。以下是一個簡單的示例,展示了如何創建一個名為my_procedure
的存儲過程,該存儲過程接受兩個參數input_param1
和input_param2
,并返回它們的和。
DELIMITER //
CREATE PROCEDURE my_procedure(IN input_param1 INT, IN input_param2 INT, OUT output_param INT)
BEGIN
SET output_param = input_param1 + input_param2;
END //
DELIMITER ;
在這個示例中,我們首先使用DELIMITER
命令更改了默認的分隔符,以便在存儲過程中使用//
作為分隔符。接下來,我們使用CREATE PROCEDURE
語句創建了一個名為my_procedure
的存儲過程,并指定了輸入參數input_param1
和input_param2
以及輸出參數output_param
。
在存儲過程的主體中,我們使用SET
語句將輸入參數的和賦值給輸出參數。最后,我們使用DELIMITER ;
命令將分隔符更改回默認的分隔符(分號)。
要調用此存儲過程,您可以使用以下語句:
DECLARE @result INT;
CALL my_procedure(3, 4, @result);
SELECT @result;
在這個示例中,我們聲明了一個名為@result
的變量來存儲存儲過程的輸出。然后,我們使用CALL
語句調用存儲過程,并將結果存儲在@result
變量中。最后,我們使用SELECT
語句輸出結果。