[C API-Mysql] Lister les tables
Résolu
kilian
Messages postés
8854
Statut
Modérateur
-
kilian Messages postés 8854 Statut Modérateur -
kilian Messages postés 8854 Statut Modérateur -
Bonjour,
J'ai un ptit problème avec l'API mysql de C
Pour une base de données nommées "loges", j'aimerais lister toutes les tables. Le problème c'est que mon code ne me renvoie pas le nom des tables mais ceci:
Vous comprendrez mon desarroi :-)
Voici la source:
J'ai essayé avec mysql_query() avec la requête SHOW TABLES mais ça donne le même resultat. A votre avis, qu'est ce que j'ai mal fait? :-)
...sachant que j'ai vérifié: la connexion se fait bien, et la requête aussi....
Merci d'avance...
J'ai un ptit problème avec l'API mysql de C
Pour une base de données nommées "loges", j'aimerais lister toutes les tables. Le problème c'est que mon code ne me renvoie pas le nom des tables mais ceci:
Tables_in_loges
Vous comprendrez mon desarroi :-)
Voici la source:
MYSQL mysql_handle;
MYSQL_FIELD *tables;
MYSQL_RES *result;
unsigned int nb_tables;
mysql_init(&mysql_handle);
// login est une structure avec mes identifiants... if(!mysql_real_connect(&mysql_handle,login_datas.host,login_datas.user,login_datas.password,login_datas.database,3386,NULL,0))
{
printf("Erreur\n");
}
result=mysql_list_tables(&mysql_handle,NULL);
if (result==NULL){
printf("Raté\n");
}
if (result)
{
nb_tables=mysql_num_fields(result);
}
tables=mysql_fetch_fields(result);
for (i=0;i<nb_tables;i++)
{
printf("%s\n",tables[i]);
}
J'ai essayé avec mysql_query() avec la requête SHOW TABLES mais ça donne le même resultat. A votre avis, qu'est ce que j'ai mal fait? :-)
...sachant que j'ai vérifié: la connexion se fait bien, et la requête aussi....
Merci d'avance...
A voir également:
- [C API-Mysql] Lister les tables
- Tables des matières word - Guide
- Lister les disques cmd - Guide
- Mysql community server - Télécharger - Bases de données
- Tables ascii - Guide
- Tous les code possible de 0 à 9 (4 chiffres ) liste - Forum Programmation
2 réponses
Problème résolu sur comp.lang.c , il ne faut pas utiliser mysql_fetch_fields car ça sert pour la "définition de champ d'une colonne dans le jeu de résultats. "
http://dev.mysql.com/doc/mysql/fr/mysql-fetch-fields.html
Il faut utiliser mysql_fetch_row() pour récupérer les resultats...
Voilà voilà :-)
http://dev.mysql.com/doc/mysql/fr/mysql-fetch-fields.html
Il faut utiliser mysql_fetch_row() pour récupérer les resultats...
Voilà voilà :-)
Bonjour,
Je reviens faire un ptit up.
J'en profite pour faire une petite correction, la structure avec mes identifiants ce n'est pas login mais login_datas (mais ça ne change rien, la connexion à la base fonctionne de tout façon).
Je reprécise un peu mon problème (j'ai un peu expliqué à la va-vite)
Donc j'ai une base nommée loges avec quelques tables dedans.
J'aimerais lister leurs noms dans la sortie standard avec printf()
Le soucis c'est que au lieu de voir s'afficher:
J'ai:
Et je ne trouve pas l'endroit ou j'aurais pu faire une mauvaise manip...
Remerci d'avance :-)
Je reviens faire un ptit up.
J'en profite pour faire une petite correction, la structure avec mes identifiants ce n'est pas login mais login_datas (mais ça ne change rien, la connexion à la base fonctionne de tout façon).
Je reprécise un peu mon problème (j'ai un peu expliqué à la va-vite)
Donc j'ai une base nommée loges avec quelques tables dedans.
J'aimerais lister leurs noms dans la sortie standard avec printf()
Le soucis c'est que au lieu de voir s'afficher:
nom_table1 nom_table2 nom_table3 etc...
J'ai:
tables_in_loges
Et je ne trouve pas l'endroit ou j'aurais pu faire une mauvaise manip...
Remerci d'avance :-)