使用可變長度字串陣列時,將它們作為參數傳遞給MySQL 儲存程式可能會帶來挑戰。為了克服這個問題,另一個解決方案是將數組值連接成一個字串並使用準備好的語句。
以下程式碼片段概述了該過程:
DELIMITER $$ CREATE PROCEDURE GetFruits(IN fruitArray VARCHAR(255)) BEGIN SET @sql = CONCAT('SELECT * FROM Fruits WHERE Name IN (', fruitArray, ')'); PREPARE stmt FROM @sql; EXECUTE stmt; DEALLOCATE PREPARE stmt; END $$ DELIMITER ;
要使用此預存過程,您可以使用以逗號分隔的數組值初始化字串變數並調用該過程,將此變量作為參數傳遞:
SET @fruitArray = '\'apple\',\'banana\''; CALL GetFruits(@fruitArray);
此解決方案有效地允許您可以將字串值數組傳遞給MySQL 儲存例程並使用記憶體表中的資料。
以上是如何將字串陣列傳遞給 MySQL 預存程序?的詳細內容。更多資訊請關注PHP中文網其他相關文章!