begin process at 2010 02 10 11:34:59
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Base de données

 > 

SQL

 > 

problème de connexion à une base de données dans C


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

problème de connexion à une base de données dans C

mercredi 1 juillet 2009 à 21:06:01 | problème de connexion à une base de données dans C

boualiasma

Salut,

1)
- Je voudrais connecter à une base des données crée sous Mysql  de version 5.1.30
le dossier d'installation est : C:\Program Files\EasyPHP 3.0\mysql
- J'ai utilisé API Mysql, mais j'ai trouvé de problème
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")


intmain(){
xmlDocPtrdoc;
xmlNodePtrracine;
MYSQLmysql;
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");
returnEXIT_FAILURE;
}
// Récupération de la racine
racine=xmlDocGetRootElement(doc);
if(racine==NULL){
fprintf(stderr,"Document XML vierge\n");
xmlFreeDoc(doc);
returnEXIT_FAILURE;
}
printf("La racine du document est : %s\n",racine->name);
// Libération de la mémoire
xmlFreeDoc(doc);

returnEXIT_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!");
}



}

Voici le message d'erruer:

1>------Débutdelagénération:Projet:passage,Configuration:DebugWin32------
1>Compilationencours...
1>main.c
1>Éditiondesliensencours...
1>main.obj:errorLNK2019:symboleexternenonrésolu_mysql_close@4référencé danslafonction_main
1>main.obj:errorLNK2019:symboleexternenonrésolu_mysql_real_connect@32référencé danslafonction_main
1>main.obj:errorLNK2019:symboleexternenonrésolu_mysql_options@12référencé danslafonction_main
1>main.obj:errorLNK2019:symboleexternenonrésolu_mysql_init@4référencé danslafonction_main
1>C:\ChGaLib\passage\Debug\passage.exe:fatalerrorLNK1120:4externesnonrésolus
1>Lejournaldegénérationa été enregistré à l'emplacement"file://c:\ChGaLib\passage\passage\Debug\BuildLog.htm"
1>passage-5erreur(s),0avertissement(s)
==========Génération:0aréussi,1a échoué,0mis à jour,0a été ignoré ==========



2) Quelles sont les étapes à suivre pour connecter une base des données sous Mysql via ODBC à partir d'un programme C ?

3) Quelle est la différence entre une connexion ODBC et celle de API Mysql ?

SVP, J'ai besoin de vos aides.





jeudi 2 juillet 2009 à 09:06:13 | Re : problème de connexion à une base de données dans C

fregolo52

Membre Club

Je n'utilise jamais les #pragma
Tu as un pb de link, a priori, libmysql.lib n'est pas trouvée. As-tu référencé le chemin du genre c:\..\Easy PHP\mysql\lib quelque part ? (dans ton projet visual ou path).
jeudi 2 juillet 2009 à 10:13:02 | Re : problème de connexion à une base de données dans C

boualiasma

Salut,
- J'ai seulement le dossier bin sous:
C:\Program Files\EasyPHP 3.0\mysql\bin
- Je ne trouve pas lib et include
J'ai mis libmysql.dll à cpoté main.c sous:
C:\ChGaLib\passage\passage

Voici le code avant de supprimer #pragma comment(lib,"libmysql.lib") :

#include <windows.h>
#include <stdio.h>
#include <stdlib.h>
#include <winsock.h>
#include <mysql.h>
#pragma comment(lib,"libmysql.lib")
int main() {
   
    MYSQL mysql;
    mysql_init(&mysql);
    mysql_options(&mysql,MYSQL_READ_DEFAULT_GROUP,"option");

       
    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!");
    }

 
}

Le 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>LINK : fatal error LNK1104: impossible d'ouvrir le fichier 'libmysql.lib'
1>Le journal de génération a été enregistré à l'emplacement "file://c:\ChGaLib\passage\passage\Debug\BuildLog.htm"
1>passage - 1 erreur(s), 0 avertissement(s)
========== Génération : 0 a réussi, 1 a échoué, 0 mis à jour, 0 a été ignoré ==========

Voici le message d'erreur si je supprime#pragma comment(lib,"libmysql.lib") :

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é ==========





jeudi 2 juillet 2009 à 10:30:15 | Re : problème de connexion à une base de données dans C

boualiasma

Salut,

2) Quelles sont les étapes à suivre pour connecter une base des données sous Mysql via ODBC à partir d'un programme C ?

3) Quelle est la différence entre une connexion ODBC et celle de API Mysql ?

jeudi 2 juillet 2009 à 15:05:53 | Re : problème de connexion à une base de données dans C

fregolo52

Membre Club

Va dans http://dev.mysql.com/downloads/mysql/5.1.html#win32
Télécharge la version zip et extrait le .lib


Cette discussion est classée dans : mysql, passage, connexion, include, main


Répondre à ce message

Sujets en rapport avec ce message

probleme de connection [ par MadMatt ] Bonjour à tousJe voudrais ouvrir une base de données en C++ sous Linux (redhat 8) et avec KDevelop.Pour se faire, il faut que j'utilise les fonctions [LINUX] Connexion mysql en C [ par JuJu ] Bonjour,J'essaie de programmer une connexion mysql en C afin d'y insérer un enregistrement.Voici mon code actuel :==================================== C++ VS Mysql [ par ours_aquatique ] Bonjour ,Aprés une semaine de recherche infructueuse , j'ai toujours le probleme suivant:je compile sous devC++ j utilise Mysql (V4.et des poussieres) probleme d'authentification [ par neofenix ] bonjour a tous et oui c'est encore moi ^^voila je crée un programme qui permet de creer un compte sur un serveur mysql et l'utilisateur peut ensuite s MySQL Linux et C [ par Big200148 ] Bonjour, je souhaite me connecter à une base MySQL en C++. Pour cela je dispose des fichier .h de Mysql et des fichiers librairie .a et .so. J'ai bien exemple de test de connection au Mysql ne marche pas dans un programme C [ par boualiasma ] 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é Eas Retour MySQL [ par Xantra ] Bonjour,J'ai un petit problème avec le code suivant :#include #include #include #include int main(){    int var;    MYSQ problème de compilation de bibliothèque XMlL dans un programme C sous visual Studio. [ par boualiasma ] Salut,- j' extrais tous les sept archives libxml2-2.7.3.win32, iconv-1.9.2.win32, zlib-1.2.3.win32, libxmlsec-1.2.11+.win32, libxslt-1.1.24.win32, xsl C et Mysql [ par boualiasma ] 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 pr configurer mon projet C avec ODBC et Mysql [ par boualiasma ] Salut,  J'ai Mysql version 4.0.15 (esayphp 1.7). Je trouve seulement le dossier bin  sous: C:\Program Files\EasyPHP1-7\mysql\bin  c'est logique de ne


Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,154 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales