voilà je vous explique mon problème.
J'ai crée une procédure stockée dans le but de faire du SQL dynamique et plus précisemment des Insert "dynamiques". Elle se présente de la manière suivante :
Procédure stockée
Code : Tout sélectionner
DROP PROCEDURE IF EXISTS `sqlDynInsert`;
DELIMITER $$
CREATE DEFINER=`root`@`localhost` PROCEDURE `sqlDynInsert`(IN asTable VARCHAR(50), IN asColonne VARCHAR(50), IN asValeur VARCHAR(100))
BEGIN
DECLARE cmd VARCHAR(255);
SET @lsSql = CONCAT('INSERT INTO ',asTable,'(',asColonne,') VALUES ("',asValeur,'")');
PREPARE cmd FROM @lsSql;
EXECUTE cmd;
DEALLOCATE PREPARE cmd;
END
$$
Cas de figure qui fonctionne :
Code : Tout sélectionner
CALL sqlDynInsert('dossiers', 'prenom', 'nicolas')Code : Tout sélectionner
CALL sqlDynInsert('dossiers', 'titre,prenom', "'M','Nicolas'")J'ai un retour m'indiquant "Column count doesn't match value count"
Selon vous, comment puis je faire pour pouvoir passer autant d'éléments que je le souhaite dans ce cas de figure.
Par avance grand merci de votre aide.