Bonjour,
J'essaie de requeter ma base de données MySQL je fait :
#extraction des donnees de la table modif
temp=`mysql -h localhost -u $user -p$pass -D$db -B -N -e "SELECT * FROM modif WHERE id=$1"`
#importer le res dans un tablo
res=($temp)
puis pour consulter les valeurs de chaque colone j'utilise
echo ${res[0]}
#ou 0 est l'indice de la premiere colonne de la ligne selectionée
jusqu'a la tous marche parfait, maintenant j'ai une table qui peut contenir des colonnes a valeur vide (NULL), alors quand je fait echo ${res[5]} où 5 l'indice de la colonne qui contient un element de valeur NULL (vide) l'echo m'affiche la valeur de la premiere colonne qui vient aprés la cinquiéme et qu'a une valeur NON NULLE.
exemple :
colonne1='valeur1' colonne2='valeur2' colonne3='valeur3' colonne4='valeur4' colonne5='' colonne6='' colonne7='valeur7'
voila ce que la variabke $temp doit contenir :
$temp=valeur1 valeur2 valeur3 valeur4 valeur7
et donc ${res[5]} me renvoit valeur7 puisque j'ai deux valeurs NULLES et que lorsque j'importe une chaine dans un tableau bash considere que chaque espace est un separateur de colonne.
comment je pourrais depasser ce probléme ?
merci d'avance