Maison >base de données >tutoriel mysql >Comment passer un tableau de chaînes à une procédure stockée MySQL ?

Comment passer un tableau de chaînes à une procédure stockée MySQL ?

DDD
DDDoriginal
2024-12-07 19:47:13851parcourir

How to Pass a String Array to a MySQL Stored Procedure?

Passer un tableau à une routine stockée MySQL

Pour transmettre un tableau de chaînes en tant que paramètre à une routine stockée MySQL, vous pouvez utiliser une instruction préparée et construire le chaîne de requête à l'aide de la fonction CONCAT().

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 ;

Comment use:

SET @fruitArray = '\'apple\',\'banana\'';
CALL GetFruits(@fruitArray);

Cette méthode créera une table temporaire avec les noms de fruits, puis utilisera une requête pour sélectionner les lignes correspondantes dans la table Fruits.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn