Types de variables incompatibles
Bonjour
Je souhaite interroger ma base de donnée et récupérer les valeurs dans un "tableau" défini par struct.
- pour num, j'obtiens 49 au lieu de 1;
- pour nom, je ne parviens pas dans la fonction à charger la valeur lue depuis la base dans la variable normalement correspondante de ma structure.
Erreur indiquée dans MySQL_lire par gcc sur la ligne tableau->nom = *row[1]; :
error: incompatible types when assigning to type ‘char[30]’ from type ‘char’
Ma base de donnée contient un champ int nommé num et un champ string (20) pour nom.
RPI - Raspbian - MySQL
Merci pour votre aide.
Extrait de la définition de ma structure .h
Code:
1 2 3 4 5 6 7
|
typedef struct Commande Commande;
struct Commande
{
int num;
char nom[30];
}; |
Extrait de main
Code:
1 2 3 4
|
struct Commande commande = {0, ""};
...
mysql_lire(&requete_sql, &commande); |
Extrait de la fonction
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
void mysql_lire(char (*requete_sql)[100], struct Commande *tableau)
MYSQL_ROW row;
while( (row = mysql_fetch_row(result)) )
{
if(num_fields >= 2)
{
tableau->num = *row[0];
tableau->nom = *row[1];
printf(" Valeur num : %d \n", tableau->num);
printf(" Valeur nom : %s \n", tableau->nom);
}
} |