Précédent   Forum des professionnels en informatique > Bases de données > MySQL > SQL Procédural
SQL Procédural Forum d'entraide sur les triggers, les procédures stockées et les fonctions en MySQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 16/09/2006, 09h41   #1
Nouveau Membre du Club
 
Inscription : septembre 2006
Messages : 32
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 32
Points : 27
Points : 27
Par défaut Procedure stocke - Probleme variable

Salut tt le monde,

J'ai un petit souci avec les procedures stockes.

CREATE PROCEDURE affArbre(IN champ VARCHAR(200))
BEGIN
SELECT champ FROM arbre;
END|

J'envoie dans ma variable champ (exemple ci dessus), champ = "col1, col2, col3". Le probleme c'est que quand le Select s'execute, il me renvoie n'importe quoi, mais pas les 3 champs que je lui ai demandé. Quelqu'un aurait une solution ?

Thanks pour toutes les réponses !!!!
Veovis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/09/2006, 11h09   #2
Rédacteur
 
Avatar de Biglo
 
Inscription : juillet 2002
Messages : 537
Détails du profil
Informations personnelles :
Localisation : France, Moselle (Lorraine)

Informations forums :
Inscription : juillet 2002
Messages : 537
Points : 561
Points : 561
Salut,

Si tu veux que ta procédure modifie "champ", il faut le déclarer en tant que paramètre de sortie avec OUT au lieu de IN.

Ensuite, je ne vois pas dans ton select où tu récupères ch1, ch2 et ch3. Là tu récupères la valeur de ton paramètre ! Pour donner une valeur à un paramètre, on peut utiliser SELECT ... INTO :

Code :
SELECT CONCAT(ch1, ch2, ch3) INTO champ FROM arbre
Mais ceci ne fonctionne que si tu n'as qu'une seule ligne dans la table "arbre". Donc, il faudrait voir ce que tu veux faire.
Biglo est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 08h22.


 
 
 
 
Partenaires

Hébergement Web