Lister les noms des champs d'une table mysql
Résolu/Fermé
xunil2003
Messages postés
766
Date d'inscription
mercredi 17 novembre 2004
Statut
Membre
Dernière intervention
29 septembre 2024
-
Modifié par xunil2003 le 27/04/2013 à 16:28
Utilisateur anonyme - 28 avril 2013 à 13:19
Utilisateur anonyme - 28 avril 2013 à 13:19
A voir également:
- Lister les noms des champs d'une table mysql
- Table ascii - Guide
- Table des matières word - Guide
- Les noms des animaux - Télécharger - Études & Formations
- Créer une liste déroulante excel - Guide
- Mysql community server - Télécharger - Bases de données
4 réponses
Utilisateur anonyme
Modifié par qqchquicommenceparQ le 27/04/2013 à 17:04
Modifié par qqchquicommenceparQ le 27/04/2013 à 17:04
salut,
Quelque chose comme: table describe;
mais je ne me souviens plus exactement.
Regarde dans le manuel
Quelque chose comme: table describe;
mais je ne me souviens plus exactement.
Regarde dans le manuel
xunil2003
Messages postés
766
Date d'inscription
mercredi 17 novembre 2004
Statut
Membre
Dernière intervention
29 septembre 2024
14
Modifié par xunil2003 le 27/04/2013 à 22:24
Modifié par xunil2003 le 27/04/2013 à 22:24
Bonsoir
Ok j'ai trouvé pour table describe.
Cependant j'ai fait un script pour sélectionner le champ à modifier d'une requête mysql avec un menu via un numéro.
Mais je n'arrive pas à avoir le résultat désiré comme ceci ;
Script
Le résultat
laurent@PC-ubuntu:~/bash/Ubuntu_12.04$ /home/laurent/bash/BDD-Mysql/bdd-table.sh
Veuillez sélectionner le champ a modifier :
1 ) Field
id
nom_module
code_maison_unite
code_maison
code_unite
nom_commande_On
nom_commande_Off
variateur_plus
variateur_moins
variateur_automatique
type
macro
emplacement
concerne
puissance
name_on
input_name_on
name_off
input_name_off
nom_groupe
2 ) Field
id
nom_module
code_maison_unite
code_maison
code_unite
nom_commande_On
nom_commande_Off
variateur_plus
variateur_moins
variateur_automatique
type
macro
emplacement
concerne
puissance
name_on
input_name_on
name_off
input_name_off
nom_groupe
3 ) Field
id
nom_module
code_maison_unite
code_maison
code_unite
nom_commande_On
nom_commande_Off
variateur_plus
variateur_moins
variateur_automatique
type
macro
emplacement
concerne
puissance
name_on
input_name_on
name_off
input_name_off
nom_groupe
4 ) Field
id
nom_module
code_maison_unite
code_maison
code_unite
nom_commande_On
nom_commande_Off
variateur_plus
variateur_moins
variateur_automatique
type
macro
emplacement
concerne
puissance
name_on
input_name_on
name_off
input_name_off
nom_groupe
5 ) Field
id
nom_module
code_maison_unite
code_maison
code_unite
nom_commande_On
nom_commande_Off
variateur_plus
variateur_moins
variateur_automatique
type
macro
emplacement
concerne
puissance
name_on
input_name_on
name_off
input_name_off
nom_groupe
6 ) Field
id
nom_module
code_maison_unite
code_maison
code_unite
nom_commande_On
nom_commande_Off
variateur_plus
variateur_moins
variateur_automatique
type
macro
emplacement
concerne
puissance
name_on
input_name_on
name_off
input_name_off
nom_groupe
7 ) Field
id
nom_module
code_maison_unite
code_maison
code_unite
nom_commande_On
nom_commande_Off
variateur_plus
variateur_moins
variateur_automatique
type
macro
emplacement
concerne
puissance
name_on
input_name_on
name_off
input_name_off
nom_groupe
8 ) Field
id
nom_module
code_maison_unite
code_maison
code_unite
nom_commande_On
nom_commande_Off
variateur_plus
variateur_moins
variateur_automatique
type
macro
emplacement
concerne
puissance
name_on
input_name_on
name_off
input_name_off
nom_groupe
9 ) Field
id
nom_module
code_maison_unite
code_maison
code_unite
nom_commande_On
nom_commande_Off
variateur_plus
variateur_moins
variateur_automatique
type
macro
emplacement
concerne
puissance
name_on
input_name_on
name_off
input_name_off
nom_groupe
10 ) Field
id
nom_module
code_maison_unite
code_maison
code_unite
nom_commande_On
nom_commande_Off
variateur_plus
variateur_moins
variateur_automatique
type
macro
emplacement
concerne
puissance
name_on
input_name_on
name_off
input_name_off
nom_groupe
11 ) Field
id
nom_module
code_maison_unite
code_maison
code_unite
nom_commande_On
nom_commande_Off
variateur_plus
variateur_moins
variateur_automatique
type
macro
emplacement
concerne
puissance
name_on
input_name_on
name_off
input_name_off
nom_groupe
laurent@PC-ubuntu:~/bash/Ubuntu_12.04$
D'où vient mon erreur ?
Merci
Ok j'ai trouvé pour table describe.
Cependant j'ai fait un script pour sélectionner le champ à modifier d'une requête mysql avec un menu via un numéro.
Mais je n'arrive pas à avoir le résultat désiré comme ceci ;
Veuillez sélectionner le champ a modifier : 1) id 2) nom_module 3) code_maison_unite 4) code_maison 5) code_unite etc....
Script
#!/bin/bash #------- CONNECTION A LA BASSE DE DONNES AVEC BASH ------------- hote_db="localhost" nom_bd="domotique" nom_table="modules_x10" login_db="root" pass_bd="xxxxxxxx" dossier="/home/laurent/bash/BDD-Mysql" nombre=$(IFS=''; { for i in $(ls -al $dossier); do echo "$i"; done } | wc -l) fc=$(echo "DESCRIBE $nom_table" | mysql -p$pass_bd -u root $nom_bd | cut -f1) i=1 # on initialise le compteur echo "Veuillez sélectionner le champ a modifier :" while [ $i -le $nombre ]; do echo $i ") $fc " #$(listing) let $[ i+=1 ] # incremente i de 1 a chaque boucle done ; echo "" read modif_champ
Le résultat
laurent@PC-ubuntu:~/bash/Ubuntu_12.04$ /home/laurent/bash/BDD-Mysql/bdd-table.sh
Veuillez sélectionner le champ a modifier :
1 ) Field
id
nom_module
code_maison_unite
code_maison
code_unite
nom_commande_On
nom_commande_Off
variateur_plus
variateur_moins
variateur_automatique
type
macro
emplacement
concerne
puissance
name_on
input_name_on
name_off
input_name_off
nom_groupe
2 ) Field
id
nom_module
code_maison_unite
code_maison
code_unite
nom_commande_On
nom_commande_Off
variateur_plus
variateur_moins
variateur_automatique
type
macro
emplacement
concerne
puissance
name_on
input_name_on
name_off
input_name_off
nom_groupe
3 ) Field
id
nom_module
code_maison_unite
code_maison
code_unite
nom_commande_On
nom_commande_Off
variateur_plus
variateur_moins
variateur_automatique
type
macro
emplacement
concerne
puissance
name_on
input_name_on
name_off
input_name_off
nom_groupe
4 ) Field
id
nom_module
code_maison_unite
code_maison
code_unite
nom_commande_On
nom_commande_Off
variateur_plus
variateur_moins
variateur_automatique
type
macro
emplacement
concerne
puissance
name_on
input_name_on
name_off
input_name_off
nom_groupe
5 ) Field
id
nom_module
code_maison_unite
code_maison
code_unite
nom_commande_On
nom_commande_Off
variateur_plus
variateur_moins
variateur_automatique
type
macro
emplacement
concerne
puissance
name_on
input_name_on
name_off
input_name_off
nom_groupe
6 ) Field
id
nom_module
code_maison_unite
code_maison
code_unite
nom_commande_On
nom_commande_Off
variateur_plus
variateur_moins
variateur_automatique
type
macro
emplacement
concerne
puissance
name_on
input_name_on
name_off
input_name_off
nom_groupe
7 ) Field
id
nom_module
code_maison_unite
code_maison
code_unite
nom_commande_On
nom_commande_Off
variateur_plus
variateur_moins
variateur_automatique
type
macro
emplacement
concerne
puissance
name_on
input_name_on
name_off
input_name_off
nom_groupe
8 ) Field
id
nom_module
code_maison_unite
code_maison
code_unite
nom_commande_On
nom_commande_Off
variateur_plus
variateur_moins
variateur_automatique
type
macro
emplacement
concerne
puissance
name_on
input_name_on
name_off
input_name_off
nom_groupe
9 ) Field
id
nom_module
code_maison_unite
code_maison
code_unite
nom_commande_On
nom_commande_Off
variateur_plus
variateur_moins
variateur_automatique
type
macro
emplacement
concerne
puissance
name_on
input_name_on
name_off
input_name_off
nom_groupe
10 ) Field
id
nom_module
code_maison_unite
code_maison
code_unite
nom_commande_On
nom_commande_Off
variateur_plus
variateur_moins
variateur_automatique
type
macro
emplacement
concerne
puissance
name_on
input_name_on
name_off
input_name_off
nom_groupe
11 ) Field
id
nom_module
code_maison_unite
code_maison
code_unite
nom_commande_On
nom_commande_Off
variateur_plus
variateur_moins
variateur_automatique
type
macro
emplacement
concerne
puissance
name_on
input_name_on
name_off
input_name_off
nom_groupe
laurent@PC-ubuntu:~/bash/Ubuntu_12.04$
D'où vient mon erreur ?
Merci
xunil2003
Messages postés
766
Date d'inscription
mercredi 17 novembre 2004
Statut
Membre
Dernière intervention
29 septembre 2024
14
Modifié par xunil2003 le 28/04/2013 à 13:03
Modifié par xunil2003 le 28/04/2013 à 13:03
Bonjour,
j'ai modifié mon code :
Script
Résultat :
La ligne 226 est :
Ensuite je modifie le champs de ma table comme ceci.
Comment puis je faire pour qu'il sache que lorsque l'utilisateur tape 3 cela correspond à "nom_module" ?
Afin d'envoyer "nom_module" dans la variable $valeur2 pour modifier le champ ?
Merci.
j'ai modifié mon code :
Script
ar=($(echo "DESCRIBE $nom_table" | mysql -p$pass_bd -u root $nom_bd | cut -f1)); echo "Veuillez indiquer votre choix :" select ntit in ${ar[@]} do for l in $Reply; do if [ $l -lt $cnt ] then ((var=$l-1)); open ${ar[$var]}; else exit fi done done
Résultat :
laurent@PC-ubuntu:~$ /home/laurent/bash/BDD-Mysql/bdd-table.sh Veuillez indiquer votre choix : 1) Field 12) type 2) id 13) macro 3) nom_module 14) emplacement 4) code_maison_unite 15) concerne 5) code_maison 16) puissance 6) code_unite 17) name_on 7) nom_commande_On 18) input_name_on 8) nom_commande_Off 19) name_off 9) variateur_plus 20) input_name_off 10) variateur_moins 21) nom_groupe 11) variateur_automatique #? 3 /home/laurent/bash/BDD-Mysql/bdd-table.sh: ligne 226 : [: 3 : opérateur unaire attendu laurent@PC-ubuntu:~$
La ligne 226 est :
if [ $l -lt $cnt ]
Ensuite je modifie le champs de ma table comme ceci.
mysql_cmd="mysql -D $nom_bd -u$login_db -p$pass_bd" $mysql_cmd -e "UPDATE $nom_table SET colonne1='$valeur2' WHERE id=$id "
Comment puis je faire pour qu'il sache que lorsque l'utilisateur tape 3 cela correspond à "nom_module" ?
Afin d'envoyer "nom_module" dans la variable $valeur2 pour modifier le champ ?
Merci.
Utilisateur anonyme
28 avril 2013 à 13:19
28 avril 2013 à 13:19
cnt n'est pas défini.
c'est quoi? le nombre d'élément du tableau ? alors ce serait ${#nomTableau[@]}
c'est quoi? le nombre d'élément du tableau ? alors ce serait ${#nomTableau[@]}