TEXT variable pour construction de la requête
Bonjour,
J'ai une série de questions..que je vais essayer de décomposer le mieux possible , voici la premiere :
Est il possible d'envoyer une variable texte à une procedure stockée afin d'en faciliter(grandement) sa création ?
Ma requete est complexe (rechere avancée) .
Concretement l'idée serait de pouvoir faire :
Code:
CALL procedure ( 4 OR x = 5 OR etc..) ;
Jai essayée en vain ce genre de chose :
Code:
1 2 3 4 5 6
| CREATE PROCEDURE `test`(IN param VARCHAR(128))
BEGIN
SELECT * FROM table WHERE colonne = param;
END |
en lisant sur des forum anglais jai cru comprendre que l'idée était possible en faisant une requete dynamique avec concat ,jai donc tenter :
Code:
1 2 3 4 5 6 7 8
| CREATE PROCEDURE `test`(IN param VARCHAR(128))
BEGIN
SET @S = CONCAT("SELECT * FROM table WHERE colonne =" , param);
PREPARE STMT FROM @S;
EXECUTE STMT;
END |
Mais il n'y a toujours que le premier argument pris en compte, ici 4.
Merci pour tout conseil (ou référence à lire)
Jess