Bonjour,
j'ai récupéré le code du tutoriel MySQL afin de me connecter a ma base SQL.
Le code est le suivant :
En rouge, le code qui ressort une erreur lors de la compilation.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 //Déclaration du pointeur de structure de type MYSQL MYSQL mysql; //Initialisation de MySQL mysql_init(&mysql); //Options de connexion mysql_options(&mysql,MYSQL_READ_DEFAULT_GROUP,"option"); //Si la connexion réussie... if(mysql_real_connect(&mysql,"localhost","root","","musiclesson",0,NULL,0)) { //Requête qui sélectionne tout dans ma table scores mysql_query(&mysql, "SELECT * FROM client"); //Déclaration des pointeurs de structure MYSQL_RES *result = NULL; MYSQL_ROW *row = NULL; int i = 1; unsigned int num_champs = 0; //On met le jeu de résultat dans le pointeur result result = mysql_use_result(&mysql); //On récupère le nombre de champs num_champs = mysql_num_fields(result); //Tant qu'il y a encore un résultat ... while(row = mysql_fetch_row(result)) {
Le message d'erreur est le suivant :
Cannot convert 'char*' to MYSQL_RES* for argument '1' to 'char**' mysql_fetch_row(MYSQL_RES*)'
J'ai également une erreur un peu plus loin dans mon code :
Expected primary-expression before '?' token.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 //On déclare un pointeur long non signé pour y stocker la taille des valeurs unsigned long *lengths; //On stocke cette taille dans le pointeur lengths = mysql_fetch_lengths(result); //On fait une boucle pour avoir la valeur de chaque champs for(i = 0; i < num_champs; i++) { //On ecrit toutes les valeurs printf("[%.*s] ", (int) lengths[i], row[i]); ? row[i] : "NULL"); } printf("\n"); }
Expected ';' before ')' token
Partager