C et Mysql

boualiasma Messages postés 393 Date d'inscription lundi 22 juin 2009 Statut Membre Dernière intervention 23 décembre 2011 - 29 juin 2009 à 10:56
boualiasma Messages postés 393 Date d'inscription lundi 22 juin 2009 Statut Membre Dernière intervention 23 décembre 2011 - 1 juil. 2009 à 09:53
Salut,

-Je voudrais établir dans mon programme C une connexion à une base de données crée sous Mysql(j'ai instalé EasyPHP-3.0-setup).
Sachant que mon programme C est sous Visual Studio 2008.

- Quelles sont les étapes à suivre pour établir cette connexion pour que je puisse traiter des requêtes de sélection et de Mise à jour ?

- y-a-il un exemple de test pour vérifier ces étapes ?

SVP, J'ai besoin de vos aides.

8 réponses

cs_faucheuse Messages postés 308 Date d'inscription jeudi 10 janvier 2008 Statut Membre Dernière intervention 27 octobre 2011
29 juin 2009 à 16:25
Il te faut pour cela prendre connaissance de l'API MySql qui fonctionnera avec cette version de EasyPHP.
Pour connaitre ta version de mysql, clique droit sur l'icone de EasyPHP et clic administration, ensuite tu va sur le site de mysql et tu cherche la doc qui te donnera les différentes fonctions C/C++ utilisable.

Bon courage
0
boualiasma Messages postés 393 Date d'inscription lundi 22 juin 2009 Statut Membre Dernière intervention 23 décembre 2011 5
29 juin 2009 à 17:33
Salut,

- La vesion de mysql est 5.1.30.
- J'ai trouvé seulement le dossier bien sous:
C:\Program Files\EasyPHP 3.0\mysql\bin

- Je ne trouve pas sur le site Mysql les différentes fonctions C/C++ utilisable.
http://dev.mysql.com/doc/

- Quelles sont les étapes à suivre pour établir une connexion entre mon programme C sous Visual Studio et Une base de donnée sous Mysql ?

Je serais très contente pour toute solution.
0
racpp Messages postés 1909 Date d'inscription vendredi 18 juin 2004 Statut Modérateur Dernière intervention 14 novembre 2014 17
29 juin 2009 à 20:42
Salut,
Pour la documentation en francais regarde ici par exemple:
http://mirror.facebook.net/mysql/doc/refman/5.0/fr/c.html
La documentation originale est en anglais ici:
http://dev.mysql.com/doc/refman/5.1/en/c.html
Il faut avoir les dossiers include et lib de MySQL que tu peux récupérer en téléchargeant le zip d'installation de MySQL server ici:
http://mirrors.ircam.fr/pub/mysql/Downloads/MySQL-5.1/mysql-noinstall-5.1.35-win32.zip
Tu copieras les fichiers des deux dossiers puis tu les colleras respectivement dans les dossiers include et lib de ton Visual C/C++ 2008. Ne pas oublier de mettre la dll libmysql.dll dans le dossier system32 ou le dossier de ton exécutable.
Pour établir une connexion on utilise la fonction mysql_real_connect(). Pour exécuter une requete il y a mysql_query().
Voici un tuto pourrant t'aider à commencer:
http://lfe.developpez.com/BCBmySQL/
0
boualiasma Messages postés 393 Date d'inscription lundi 22 juin 2009 Statut Membre Dernière intervention 23 décembre 2011 5
30 juin 2009 à 00:18
Salut,

- J'ai téléchargé le dossier zip alors j'ai trouvé un dossier mysql 5.1.35.
qui contient des dossiers include, bin et lib.
est ce que je mis le contenu de ces 3 dossiers sous respectivement ? :
C:\Program Files\Microsoft Visual Studio 9.0\VC\include
C:\Program Files\Microsoft Visual Studio 9.0\VC\bin
C:\Program Files\Microsoft Visual Studio 9.0\VC\lib

- J'ai une base de données avec mysql de version 5.1.30.
j'ai remarqué que ceci et l'api mysql ne sont pas de même version.
pas de problème?

- Quel site que vous avez trouvé cet API? il y a Autre API ?

- Est ce que j'ajoute la ligne suivante à mon code?
#pragma comment(lib,"mysql.lib")

- Avez-vous un exemple de test pour tester votre solution ?

Je vous remercie pour vos aides.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
racpp Messages postés 1909 Date d'inscription vendredi 18 juin 2004 Statut Modérateur Dernière intervention 14 novembre 2014 17
30 juin 2009 à 01:41
- Pas besoin du dossier bin car tu l'as déjà dans le dossier d'installation de EasyPHP.
- Comme tu l'as remarqué, la version téléchargée est plus récente ainsi elle supporte toutes les fonctionnalités de l'ancienne version Donc aucun problème.
- La meilleure documentation, en anglais, est fournie dans le dossier doc du zip que tu as téléchargé.
- Oui tu peux ajouter #pragma comment(lib,"mysql.lib") à ton code juste après les includes.
- Exemple:
#include <windows.h>
#include <mysql.h>
#pragma comment (lib,"libmysql.lib")
MYSQL mysql;

//...
mysql_init(&mysql);
mysql=mysql_real_connect(&mysql,"localhost","utilisateur","motdepasse","base",0,0,0);
//.. appel des autres fonctions....
//...
mysql_close(&mysql);
0
boualiasma Messages postés 393 Date d'inscription lundi 22 juin 2009 Statut Membre Dernière intervention 23 décembre 2011 5
30 juin 2009 à 11:44
Salut,

- J'ai copié seulement le contenu des deux dossiers lib et include du Zip dans :
C:\Program Files\Microsoft Visual Studio 9.0\VC\include
C:\Program Files\Microsoft Visual Studio 9.0\VC\lib

- J'ai ajouté la dll libmysql.dll dans le dossier de mon exécutable sous:
C:\ChGaLib\passage\passage\Debug

- j'ai ajouté ajouter #pragma comment(lib,"mysql.lib") à mon code juste après les includes

- J'ai ajouté seulement à mon code deux lignes pour tester
#include <mysql.h>
#pragma comment (lib,"libmysql.lib")

Mon code source est :

#include <stdio.h>
#include <stdlib.h>
#include <libxml/parser.h>
#include <mysql.h>
#pragma comment(lib,"libxml2.lib")
#pragma comment (lib,"libmysql.lib")

int main() {
    xmlDocPtr doc;
    xmlNodePtr racine;

    // Ouverture du fichier XML
    doc = xmlParseFile("catalogue.xml");
    if (doc == NULL) {
        fprintf(stderr, "Document XML invalide\n");
        return EXIT_FAILURE;
    }
    // Récupération de la racine
    racine = xmlDocGetRootElement(doc);
    if (racine == NULL) {
        fprintf(stderr, "Document XML vierge\n");
        xmlFreeDoc(doc);
        return EXIT_FAILURE;
    }
    printf("La racine du document est : %s\n", racine->name);
    // Libération de la mémoire
    xmlFreeDoc(doc);

    return EXIT_SUCCESS;
   
}

J'ai eu une liste d'erreurs:

1>------ Début de la génération : Projet : passage, Configuration : Debug Win32 ------
1>Compilation en cours...
1>main.c
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(243) : error C2061: erreur de syntaxe : identificateur 'SOCKET'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(280) : error C2059: erreur de syntaxe : '}'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(394) : error C2143: erreur de syntaxe : absence de ')' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(394) : error C2143: erreur de syntaxe : absence de '{' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(394) : error C2371: 'Vio' : redéfinition ; types de base différents
1>        c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(229) : voir la déclaration de 'Vio'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(394) : error C2143: erreur de syntaxe : absence de ';' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(394) : error C2059: erreur de syntaxe : ')'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(395) : error C2143: erreur de syntaxe : absence de ')' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(395) : error C2143: erreur de syntaxe : absence de '{' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(395) : error C2059: erreur de syntaxe : ')'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(396) : error C2143: erreur de syntaxe : absence de ')' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(396) : error C2143: erreur de syntaxe : absence de '{' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(396) : error C2059: erreur de syntaxe : ')'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(397) : error C2143: erreur de syntaxe : absence de ')' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(397) : error C2143: erreur de syntaxe : absence de '{' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(397) : error C2371: 'my_bool' : redéfinition ; types de base différents
1>        c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(51) : voir la déclaration de 'my_bool'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(397) : error C2146: erreur de syntaxe : absence de ';' avant l'identificateur 'clear_buffer'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(397) : error C2059: erreur de syntaxe : ')'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(398) : error C2143: erreur de syntaxe : absence de ')' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(398) : error C2143: erreur de syntaxe : absence de '{' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(398) : warning C4142: redéfinition bénigne du type
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(398) : error C2370: 'size_t' : redéfinition ; classe de stockage différente
1>        c:\program files\microsoft visual studio 9.0\vc\include\codeanalysis\sourceannotations.h(19) : voir la déclaration de 'size_t'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(398) : error C2146: erreur de syntaxe : absence de ';' avant l'identificateur 'length'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(398) : error C2059: erreur de syntaxe : ')'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(398) : warning C4142: redéfinition bénigne du type
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(399) : error C2143: erreur de syntaxe : absence de ')' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(399) : error C2143: erreur de syntaxe : absence de '{' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(399) : error C2059: erreur de syntaxe : ')'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(400) : error C2143: erreur de syntaxe : absence de ')' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(400) : error C2143: erreur de syntaxe : absence de '{' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(400) : error C2059: erreur de syntaxe : 'type'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(400) : error C2059: erreur de syntaxe : ')'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(401) : error C2143: erreur de syntaxe : absence de ')' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(401) : error C2143: erreur de syntaxe : absence de '{' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(401) : error C2059: erreur de syntaxe : 'type'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(403) : error C2059: erreur de syntaxe : ')'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(404) : error C2143: erreur de syntaxe : absence de ')' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(404) : error C2143: erreur de syntaxe : absence de '{' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(404) : error C2059: erreur de syntaxe : 'type'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(404) : error C2059: erreur de syntaxe : ')'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(405) : error C2143: erreur de syntaxe : absence de ')' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(405) : error C2143: erreur de syntaxe : absence de '{' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(405) : error C2059: erreur de syntaxe : ')'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(417) : error C2146: erreur de syntaxe : absence de ')' avant l'identificateur 's'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(417) : error C2061: erreur de syntaxe : identificateur 's'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(417) : error C2059: erreur de syntaxe : ';'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(417) : error C2059: erreur de syntaxe : ','
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(418) : error C2059: erreur de syntaxe : ')'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(260) : error C2016: C requiert qu'un struct ou une union possède au moins un membre
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(260) : error C2061: erreur de syntaxe : identificateur 'NET'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(285) : error C2365: 'scramble' : redéfinition ; la précédente définition était 'fonction'
1>        c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(491) : voir la déclaration de 'scramble'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(313) : error C2059: erreur de syntaxe : '}'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(322) : error C2061: erreur de syntaxe : identificateur 'MYSQL'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(332) : error C2059: erreur de syntaxe : '}'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(350) : error C2016: C requiert qu'un struct ou une union possède au moins un membre
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(350) : error C2061: erreur de syntaxe : identificateur 'NET'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(355) : warning C4142: redéfinition bénigne du type
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(359) : error C2369: 'last_error' : redéfinition ; indices différents
1>        c:\program files\microsoft visual studio 9.0\vc\include\mysql_com.h(276) : voir la déclaration de 'last_error'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(361) : error C2059: erreur de syntaxe : '}'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(411) : error C2143: erreur de syntaxe : absence de ')' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(411) : error C2143: erreur de syntaxe : absence de '{' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(411) : error C2059: erreur de syntaxe : ')'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(412) : error C2143: erreur de syntaxe : absence de ')' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(412) : error C2143: erreur de syntaxe : absence de '{' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(412) : error C2059: erreur de syntaxe : ')'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(413) : error C2143: erreur de syntaxe : absence de ')' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(413) : error C2143: erreur de syntaxe : absence de '{' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(413) : error C2059: erreur de syntaxe : ')'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(414) : error C2143: erreur de syntaxe : absence de ')' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(414) : error C2143: erreur de syntaxe : absence de '{' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(415) : error C2059: erreur de syntaxe : 'type'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(415) : error C2059: erreur de syntaxe : ')'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(416) : error C2143: erreur de syntaxe : absence de ')' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(416) : error C2143: erreur de syntaxe : absence de '{' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(416) : error C2059: erreur de syntaxe : ')'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(417) : error C2143: erreur de syntaxe : absence de ')' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(417) : error C2143: erreur de syntaxe : absence de '{' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(417) : error C2059: erreur de syntaxe : ')'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(418) : error C2143: erreur de syntaxe : absence de ')' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(418) : error C2143: erreur de syntaxe : absence de '{' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(418) : error C2059: erreur de syntaxe : ')'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(420) : error C2143: erreur de syntaxe : absence de ')' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(420) : error C2143: erreur de syntaxe : absence de '{' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(420) : error C2059: erreur de syntaxe : ')'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(421) : error C2143: erreur de syntaxe : absence de ')' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(421) : error C2143: erreur de syntaxe : absence de '{' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(421) : error C2059: erreur de syntaxe : ')'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(422) : error C2143: erreur de syntaxe : absence de ')' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(422) : error C2143: erreur de syntaxe : absence de '{' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(422) : error C2059: erreur de syntaxe : ')'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(423) : error C2143: erreur de syntaxe : absence de ')' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(423) : error C2143: erreur de syntaxe : absence de '{' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(423) : error C2059: erreur de syntaxe : ')'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(424) : error C2143: erreur de syntaxe : absence de ')' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(424) : error C2143: erreur de syntaxe : absence de '{' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(424) : error C2059: erreur de syntaxe : ')'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(425) : error C2143: erreur de syntaxe : absence de ')' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(425) : error C2143: erreur de syntaxe : absence de '{' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(425) : error C2059: erreur de syntaxe : ')'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(426) : error C2143: erreur de syntaxe : absence de ')' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(426) : error C2143: erreur de syntaxe : absence de '{' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(426) : error C2059: erreur de syntaxe : ')'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(427) : error C2143: erreur de syntaxe : absence de ')' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(427) : error C2143: erreur de syntaxe : absence de '{' avant '*'
1>c:\program files\microsoft visual studio 9.0\vc\include\mysql.h(427) : fatal error C1003: le nombre d'erreurs est supérieur à 100 ; arrêt de la compilation
1>Le journal de génération a été enregistré à l'emplacement "file://c:\ChGaLib\passage\passage\Debug\BuildLog.htm"
1>passage - 102 erreur(s), 3 avertissement(s)
======== Génération : 0 a réussi, 1 a échoué, 0 mis à jour, 0 a été ignoré ==========

SVP, j'ai besoin de vos aides.
0
boualiasma Messages postés 393 Date d'inscription lundi 22 juin 2009 Statut Membre Dernière intervention 23 décembre 2011 5
30 juin 2009 à 12:01
Salut,

- à savoir, que j'ai copié les deux dossiers debug et opt qui existent dans le dossier mysql-5.1.35-win32\lib du ZIP  sous:
C:\Program Files\Microsoft Visual Studio 9.0\VC\lib

- Est ce que je copie le dossier bin qui existent dans le dossier mysql-5.1.35-win32\bin  du ZIP  et le dossier bin de mysql qui existe dans C:\Program Files\EasyPHP 3.0\mysql\bin  sous:?
C:\Program Files\Microsoft Visual Studio 9.0\VC\bin

- Est ce que il y a une configuration à faire dans mon espace de projet?

- Quel site que vous avez téléchargé le ZIP mysql-5.1.35-win32 ?

Merci à vos aides.
0
boualiasma Messages postés 393 Date d'inscription lundi 22 juin 2009 Statut Membre Dernière intervention 23 décembre 2011 5
1 juil. 2009 à 09:53
Salut,

j'ai installé la librairie mysql.
- Je voudrais
établir dans mon programme C une connexion à une base de données crée
sous Mysql(j'ai instalé EasyPHP-3.0-setup). Sachant que mon programme C
est sous Visual Studio 2008.

- La vesion de mysql est 5.1.30.
- J'ai écrit un petit exemple de test. mais j'ai eu des erreurs.

Voici mon code:

#include <windows.h>
#include <stdio.h>
#include <stdlib.h>
#include <libxml/parser.h>
#include <winsock.h>
#include <mysql.h>
#pragma comment(lib,"libxml2.lib")
//#pragma comment (lib,"libmysql.lib")

int main() {
    xmlDocPtr doc;
    xmlNodePtr racine;
    MYSQL mysql;
    mysql_init(&mysql);
    mysql_options(&mysql,MYSQL_READ_DEFAULT_GROUP,"option");

    // Ouverture du fichier XML
    doc = xmlParseFile("catalogue.xml");
    if (doc == NULL) {
        fprintf(stderr, "Document XML invalide\n");
        return EXIT_FAILURE;
    }
    // Récupération de la racine
    racine = xmlDocGetRootElement(doc);
    if (racine == NULL) {
        fprintf(stderr, "Document XML vierge\n");
        xmlFreeDoc(doc);
        return EXIT_FAILURE;
    }
    printf("La racine du document est : %s\n", racine->name);
    // Libération de la mémoire
    xmlFreeDoc(doc);

    return EXIT_SUCCESS;
    

    
    if(mysql_real_connect(&mysql,"localhost","root","","chmsi",0,NULL,0))
    {
        mysql_close(&mysql);
    }
    else
    {
        printf("Une erreur s'est produite lors de la connexion à la BDD!");
    }

    
}

message d'erreur:

1>------ Début de la génération : Projet : passage, Configuration : Debug Win32 ------
1>Compilation en cours...
1>main.c
1>Édition des liens en cours...
1>main.obj : error LNK2019: symbole externe non résolu _mysql_close@4 référencé dans la fonction _main
1>main.obj : error LNK2019: symbole externe non résolu _mysql_real_connect@32 référencé dans la fonction _main
1>main.obj : error LNK2019: symbole externe non résolu _mysql_options@12 référencé dans la fonction _main
1>main.obj : error LNK2019: symbole externe non résolu _mysql_init@4 référencé dans la fonction _main
1>C:\ChGaLib\passage\Debug\passage.exe : fatal error LNK1120: 4 externes non résolus
1>Le journal de génération a été enregistré à l'emplacement "file://c:\ChGaLib\passage\passage\Debug\BuildLog.htm"
1>passage - 5 erreur(s), 0 avertissement(s)
========== Génération : 0 a réussi, 1 a échoué, 0 mis à jour, 0 a été ignoré
0
Rejoignez-nous