MySQL 輸出參數(shù)是一種非常實(shí)用的機(jī)制,它可以使得存儲(chǔ)過程在執(zhí)行結(jié)束后,能夠?qū)⒁粋€(gè)或多個(gè)變量的值返回給調(diào)用者。輸出參數(shù)可以包含在存儲(chǔ)過程的參數(shù)列表中,一旦存儲(chǔ)過程執(zhí)行完畢,調(diào)用者可以獲取輸出參數(shù)的值。
-- 創(chuàng)建帶有輸出參數(shù)的存儲(chǔ)過程 DELIMITER $$ CREATE PROCEDURE test_out(IN param1 INT, OUT param2 VARCHAR(20)) BEGIN SET param2 = CONCAT('Hello', param1); END$$ DELIMITER ;
在上面的示例中,我們創(chuàng)建了一個(gè)存儲(chǔ)過程名為 test_out,該存儲(chǔ)過程包含一個(gè)輸入?yún)?shù)和一個(gè)輸出參數(shù)。輸入?yún)?shù) param1 是一個(gè)整數(shù)類型的變量,輸出參數(shù) param2 是一個(gè)字符串類型的變量。
-- 調(diào)用存儲(chǔ)過程,獲取輸出參數(shù)的值 SET @var1 = 10; CALL test_out(@var1, @var2); SELECT @var2;
在上面的示例中,我們首先將一個(gè)整數(shù)類型的值 10 賦給變量 @var1,然后調(diào)用存儲(chǔ)過程 test_out,將 @var1 作為輸入?yún)?shù)傳遞給存儲(chǔ)過程。存儲(chǔ)過程執(zhí)行完畢后,我們?cè)俅尾樵?@var2 的值,即可獲取輸出參數(shù)的值。
通過使用 MySQL 輸出參數(shù),我們可以更加方便地返回存儲(chǔ)過程的執(zhí)行結(jié)果,提高存儲(chǔ)過程的靈活性和可復(fù)用性。