[SQL] Resultat requete dans une variable

Resultat requete dans une variable [SQL] - SQL/NoSQL - Programmation

Marsh Posté le 06-07-2011 à 21:33:01    

Bonsoir,
 
Voila j'exécute une requete SQL dans un script et je voudrais récupérer le résultat de cette requête dans une variable.
 
Ma commande que je fais :
 
/usr/bin/mysql -u "MonUser" -pPassword -DmyDB < /home/user/marequete.sql
 
cela me retourne un login.
 
J'aimerai stocker ce login dans une variable pour l'exploiter dans mon script.
 
Une idée ?
 
Merci d'avance

Reply

Marsh Posté le 06-07-2011 à 21:33:01   

Reply

Marsh Posté le 07-07-2011 à 11:26:36    

Edit : Je supprime mon message, puisqu'il est répété après. Ce n'est pas la peine de l'avoir en double.

Message cité 1 fois
Message édité par olivthill le 08-07-2011 à 09:54:34
Reply

Marsh Posté le 07-07-2011 à 18:48:57    

olivthill a écrit :

Un script avec quel langage ?
Supposons que ce soit de l'Unix.
 
Essayer la ligne suivante qui utilise des apostrophes inversées (altGr 7 avec un clavier azerty)  

[#F0000E]X=`/usr/bin/mysql -u "MonUser" -pPassword -DmyDB < /home/user/marequete.sql`
echo ${X}[/#F0000E]


Si je souhaite récupérer plusieurs variables, je fais ma requête afin que se soit un SELECT avec une concaténation de toutes les variables ensemble dans une grande chaine séparée par un séparateur adéquat, par exemple une barre verticale. Ensuite, j'isole chaque variable avec des cut, par exemple

 mon_premier_champ=`echo ${X}|cut -d'|' -f1|sed 's/^ *//;s/ *$//'`
  mon_deuxieme_champ=`echo ${X}|cut -d'|' -f2|sed 's/^ *//;s/ *$//'`



 
Hello,
 
Alors la 1ere partie fonctionne et j'obtiens ça
Nom Prénom Toto titi
 
Pour la concaténation SQL je ne vois pas du tout comment faire. (débutant en SQL   :ange: )
Ma requete d'origine est un : select Nom, Prenom from logs order by date desc, time desc limit 1;
Donc en gros il faut que je les mets a la suite en les separant d'un |
 
Puis ta commande me permet d'extraire le 1ere et 2eme valeur grave au -f1 et -f2 c'est ça ?

Reply

Marsh Posté le 08-07-2011 à 09:51:37    

:)


Message édité par olivthill le 08-07-2011 à 09:53:47
Reply

Marsh Posté le 08-07-2011 à 09:52:57    

:)


Message édité par olivthill le 08-07-2011 à 09:53:31
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed