Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
887 connectés 

  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  [bash] Recuperer des données d'une base MYSQL

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[bash] Recuperer des données d'une base MYSQL

n°1099262
johnson950
Posté le 22-12-2008 à 16:58:48  profilanswer
 

Bonjour,
 
Je développe actuellement un petit script de lecture dans les bases de données.
 
Mon code actuel permet la lecture dans une BDD puis la mise en place dans un tableau :

Code :
  1. #Requete pour recuperer les noms de major
  2. temp=`mysql -h $host -D $db -B -N -e "SELECT nom FROM identite"`
  3. tableau_film=($temp)


 
Cependant, je me confronte à deux problèmes, que je n'arrive pas à contourner.
 
1 Lors de la mise en place dans un tableau, la seule solution trouvée a été de couper en utilisant "l'espace" comme caractère de séparation.
Ceci pose mon premier probleme car il découpe par exemple des noms composés
Ex : Jean Jacques
      tab[0] = Jean
      tab[1] = Jacques
Alors que je voudrais
      tab[0] = Jean Jacques
 
2 Mon second probleme est de récuperer deux champs dans deux tableaux differents

Code :
  1. #Requete pour recuperer les noms de major
  2. temp=`mysql -h $host -D $db -B -N -e "SELECT nom,prenom FROM identite"`
  3. tableau_film=($temp)


 
Exemple : récupération du nom et du prénom
 
 
Puis j'aimerais avoir :
nom[0] = Martin / nom[1] = Dupond
Prenom[0] = Anthony / Prénom[1] = Carine
 
Merci encore de votre aide!


Message édité par johnson950 le 22-12-2008 à 16:59:53
mood
Publicité
Posté le 22-12-2008 à 16:58:48  profilanswer
 

n°1099519
e_esprit
Posté le 23-12-2008 à 15:00:58  profilanswer
 

Je ne pense pas que bash soit un très bon choix pour faire ça.
Regarde du coté de Python ou de Perl, qui disposent de modules permettant de travailler proprement avec les bases de données.


---------------
Ce n'est point ma façon de penser qui a fait mon malheur, c'est celle des autres.
n°1099523
black_lord
Modérateur
Truth speaks from peacefulness
Posté le 23-12-2008 à 15:05:07  profilanswer
 

ou en ruby :o


---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
n°1099525
e_esprit
Posté le 23-12-2008 à 15:07:05  profilanswer
 

Non, pas en ruby [:-lilith-]


---------------
Ce n'est point ma façon de penser qui a fait mon malheur, c'est celle des autres.
n°1099527
memaster
ki a volé mon 62?
Posté le 23-12-2008 à 15:12:28  profilanswer
 

Code :
  1. SELECT a,b,a+b INTO OUTFILE '/tmp/result.text'
  2. FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
  3. LINES TERMINATED BY '\n'
  4. FROM test_table;


commence par séparé tes champs par un ; ==> csv
puis tu cut/parses/sed les espaces du champs nom-prémon


---------------
ma conduite intérieure .:R | memaster pilote officiel de la HFR Badoit-Auchan F1 Team | zéro tracas, zéro blabla MMa.ster
n°1099528
black_lord
Modérateur
Truth speaks from peacefulness
Posté le 23-12-2008 à 15:13:29  profilanswer
 

si :o
 
http://mollacademy.gcu.info/doku.p [...] on_db_base


---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
n°1099561
esox_ch
Posté le 23-12-2008 à 16:25:03  profilanswer
 

e_esprit a écrit :

Non, pas en ruby [:-lilith-]


 
Et pourquoi donc ? :o
La gem MySQL permet de faire tout ce dont on peut avoir besoin hein :o


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°1099592
johnson950
Posté le 23-12-2008 à 17:30:54  profilanswer
 

Merci pour vos réponses,
 
Cependant :
 
Comment fait on pour séparer mes champs par un ";" ?
Dans un script bash peut on inclure du php ?
 
Merci de votre aide

n°1099593
memaster
ki a volé mon 62?
Posté le 23-12-2008 à 17:31:58  profilanswer
 

johnson950 a écrit :

Merci pour vos réponses,
 
Cependant :
 
Comment fait on pour séparer mes champs par un ";" ?
Dans un script bash peut on inclure du php ?
 
Merci de votre aide


regarde la requete que je t'ai donné tu peux choisir [:kabale]


---------------
ma conduite intérieure .:R | memaster pilote officiel de la HFR Badoit-Auchan F1 Team | zéro tracas, zéro blabla MMa.ster
n°1099594
esox_ch
Posté le 23-12-2008 à 17:33:09  profilanswer
 

Non mais attend faut arrêter ..
Déjà le Bash c'est mort comme langage, alors en plus appeler des bouts de PHP là dedans, c'est vraiment n'importe quoi.
Opte pour un langage serieux (Ruby ou Python par exemple te permettront de faire ce que tu veux rapidement) et arrête de te compliquer la vie


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
mood
Publicité
Posté le 23-12-2008 à 17:33:09  profilanswer
 

n°1099595
e_esprit
Posté le 23-12-2008 à 17:35:26  profilanswer
 

Cela dit PHP peut très bien être utilisé en scripting, si il connait deja la syntaxe, ce sera toujours mieux que du shell pour faire ce qu'il souhaite :o


---------------
Ce n'est point ma façon de penser qui a fait mon malheur, c'est celle des autres.
n°1099597
memaster
ki a volé mon 62?
Posté le 23-12-2008 à 17:37:53  profilanswer
 

esox_ch a écrit :

Non mais attend faut arrêter ..
Déjà le Bash c'est mort comme langage, alors en plus appeler des bouts de PHP là dedans, c'est vraiment n'importe quoi.
Opte pour un langage serieux (Ruby ou Python par exemple te permettront de faire ce que tu veux rapidement) et arrête de te compliquer la vie


c'est juste un langage d'admin employé sur de très (très) nombreuses machines. :o  


---------------
ma conduite intérieure .:R | memaster pilote officiel de la HFR Badoit-Auchan F1 Team | zéro tracas, zéro blabla MMa.ster
n°1099598
e_esprit
Posté le 23-12-2008 à 17:38:50  profilanswer
 

memaster a écrit :


c'est juste un langage d'admin employé sur de très (très) nombreuses machines. :o  


Oui mais personne ne fait de gros traitement avec, c'est suicidaire :o
 
Bon, sauf Wedge, mais c'est pas pareil, il est différent :D


---------------
Ce n'est point ma façon de penser qui a fait mon malheur, c'est celle des autres.
n°1099600
memaster
ki a volé mon 62?
Posté le 23-12-2008 à 17:49:13  profilanswer
 

e_esprit a écrit :


Oui mais personne ne fait de gros traitement avec, c'est suicidaire :o
 
Bon, sauf Wedge, mais c'est pas pareil, il est différent :D


un admin ne fait jamais de gros traitement (enfin pas en bash en tout cas), donc on est d'accord. :jap:  
mais de la à dire que c'est un "langage" poubelle [:kc] , c'est qd même la dedans que l'on apprend/traite
de l'expression régulière le plus efficacement du monde.


---------------
ma conduite intérieure .:R | memaster pilote officiel de la HFR Badoit-Auchan F1 Team | zéro tracas, zéro blabla MMa.ster
n°1099601
esox_ch
Posté le 23-12-2008 à 17:50:03  profilanswer
 

memaster a écrit :


c'est juste un langage d'admin employé sur de très (très) nombreuses machines. :o  


 
Tout comme Cobol est utilisé sur une grande partie du parc mainframe, et Fortran est toujours abondamment utilisé dans la recherche scientifique.
C'est pas pour autant qu'il faut resortir tes cartes perforées si on te demande de faire qqch que Matlab te pondrait en 2 sec :o


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°1099603
memaster
ki a volé mon 62?
Posté le 23-12-2008 à 18:01:10  profilanswer
 

esox_ch a écrit :


 
Tout comme Cobol est utilisé sur une grande partie du parc mainframe, et Fortran est toujours abondamment utilisé dans la recherche scientifique.
C'est pas pour autant qu'il faut resortir tes cartes perforées si on te demande de faire qqch que Matlab te pondrait en 2 sec :o


si le (ba)sh était mauvais linus l'aurait qd même évincé depuis le temps. :sweat:  
juste remettre dans son contexte l'utilisation : à relire dans mes précédentes interventions ;)  
 
pour en revenir au pb, je pense qu'il est mieux de le traité directement au niveau de MySQL justement :hello: ,
c'est inclu dedans autant l'utiliser. [:kabale]


---------------
ma conduite intérieure .:R | memaster pilote officiel de la HFR Badoit-Auchan F1 Team | zéro tracas, zéro blabla MMa.ster
n°1099605
black_lord
Modérateur
Truth speaks from peacefulness
Posté le 23-12-2008 à 18:34:10  profilanswer
 

on va revenir sur le sujet :o Le langage osef, merci :o
 
esox_ch > le bash n'est pas mort, il n'est juste pas forcemment adapté ici & maintenant  
memaster62 > le mieux est surement de grouper le traitement dans un script, parce que quand il voudra faire évoluer la chose ce sera plus confortable.


---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
n°1099616
e_esprit
Posté le 23-12-2008 à 19:11:53  profilanswer
 

memaster a écrit :


un admin ne fait jamais de gros traitement (enfin pas en bash en tout cas), donc on est d'accord. :jap:  
mais de la à dire que c'est un "langage" poubelle [:kc] , c'est qd même la dedans que l'on apprend/traite
de l'expression régulière le plus efficacement du monde
.


Là je suis pas d'accord :D
 
Perl est très bon sur ce point, et Ruby a l'air encore meilleur (enfin de ce que j'ai pu survolé).


---------------
Ce n'est point ma façon de penser qui a fait mon malheur, c'est celle des autres.
n°1099637
black_lord
Modérateur
Truth speaks from peacefulness
Posté le 23-12-2008 à 20:41:25  profilanswer
 

e_esprit a écrit :


Là je suis pas d'accord :D
 
Perl est très bon sur ce point, et Ruby a l'air encore meilleur (enfin de ce que j'ai pu survolé).


 
+100 pour les regexps honnêtement en deça d'un certain niveau c'est kif kif...


---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
n°1101898
sputnick
bip...bip...bip...bip...bi...b
Posté le 05-01-2009 à 01:20:21  profilanswer
 

Il serais plus facile de t'aider avec la sortie (modifiée ou non) de  

Code :
  1. mysql -h $host -D $db -B -N -e "SELECT nom,prenom FROM identite"


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  [bash] Recuperer des données d'une base MYSQL

 

Sujets relatifs
[BASH] Amélioration de script (boucle et autre)[Résolu] Besoin d'aide : récupérer fichier sur un serveur
Centos : fichier de configuration de MySqlBind9 et Mysql
Client graphique Linux pour base DB2[bash] effectuer un ls sans afficher chemin des fichiers
[bash] trouver le fichier le plus recent dans un dossier avec find[bash] commande lors de l'ouverture d'un terminal
Mysql 5.0.45 & ODBCrécupérer des fichiers via putty scp / via pscp
Plus de sujets relatifs à : [bash] Recuperer des données d'une base MYSQL


Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR