IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MySQL Discussion :

Problème de header MySQL


Sujet :

MySQL

  1. #1
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2011
    Messages : 20
    Points : 14
    Points
    14
    Par défaut Problème de header MySQL
    Bonjour.
    Je découvre MySQL et je suis plutôt débutant en développement.
    Je code une application c++ qui doit se connecter et envoyer des requêtes à une base de donnée MySQL.

    Pour faire des tests j'ai créé une fonction dans une classe mais cette fonction ne compile pas.
    voici le code de ma fonction :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    char *server = "localhost";
        char *user = "blot";
        char *password = "blot";
        char *database = "maBase";
    	MYSQL *connection = mysql_init(NULL);
     
        // connect to the database with the details attached.
        if (!mysql_real_connect(connection, server, user, password, database, 0, NULL, 0)) {	
    		cout<< "Conection error : \n";
    		cout<< mysql_error(connection)<<endl;
        }
    	else{
    		cout<<"connexion reussi"<<endl;
    	}
    et voici le header que je met :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    #include <C:\Program Files\MySQL\MySQL Server 5.1\include\mysql.h>

    A la compilation les erreurs que j'obtiens sont :

    1>BDInterface.obj : error LNK2019: symbole externe non résolu _mysql_error@4 référencé dans la fonction "public: void __thiscall BDInterface::ReadMyData(void)" (?ReadMyData@BDInterface@@QAEXXZ)
    1>BDInterface.obj : error LNK2019: symbole externe non résolu _mysql_real_connect@32 référencé dans la fonction "public: void __thiscall BDInterface::ReadMyData(void)" (?ReadMyData@BDInterface@@QAEXXZ)
    1>BDInterface.obj : error LNK2019: symbole externe non résolu _mysql_init@4 référencé dans la fonction "public: void __thiscall BDInterface::ReadMyData(void)" (?ReadMyData@BDInterface@@QAEXXZ)


    Je suppose que c'est un problème de header mais celui ci est reconnu. Donc je ne sais plus quoi faire pour que ma fonction passe à la compilation et avancer dans mon projet.
    Quelqu'un aurait une idée??

    Merci d'avance pour vos contributions.

  2. #2
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2011
    Messages : 20
    Points : 14
    Points
    14
    Par défaut
    Bon j'ai ajouté libmysql.lib à l'entrée de éditeur de lien ainsi qu'ajouté le repertoire "C:\Program Files\MySQL\MySQL Server 5.1\lib\opt" à répertoire de bibliothèque supplémentaire.

    J'ai toujours les mêmes erreurs. Je ne sais plus quoi faire. Faut t'il que j'ajoute des .lib??
    Quelqu'un peu m'aider?

  3. #3
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2011
    Messages : 20
    Points : 14
    Points
    14
    Par défaut
    J'ai vue sur d'autre forum qu'il fallait utiliser extern 'C' pour utiliser les fonction C de la librairie avec du C++.
    Mais je ne sais pas du tout comment utiliser cette fonctionnalité.
    Si quelqu'un peu m'expliquer ou me dire ou trouver des exemples ça m'avancerais beaucoup.

    Merci :-)

  4. #4
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2011
    Messages : 20
    Points : 14
    Points
    14
    Par défaut
    Bon ce n'est toujours pas à cause de cela.
    J'ai mis :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    extern "C"{
    	#include "mysql.h"
    }
    et toujours les mêmes erreurs à la compilation:

    1>BDInterface.obj : error LNK2019: symbole externe non résolu _mysql_error@4 référencé dans la fonction "public: void __thiscall BDInterface::ReadMyData(void)" (?ReadMyData@BDInterface@@QAEXXZ)
    1>BDInterface.obj : error LNK2019: symbole externe non résolu _mysql_real_connect@32 référencé dans la fonction "public: void __thiscall BDInterface::ReadMyData(void)" (?ReadMyData@BDInterface@@QAEXXZ)
    1>BDInterface.obj : error LNK2019: symbole externe non résolu _mysql_init@4 référencé dans la fonction "public: void __thiscall BDInterface::ReadMyData(void)" (?ReadMyData@BDInterface@@QAEXXZ)
    1>C:\Users\blot\Desktop\SSP\Debug\SSP.exe : fatal error LNK1120: 3 externes non résolus
    Je ne sais plus quoi faire...

Discussions similaires

  1. Problème de configuration MySQL Apache
    Par FredMines dans le forum Installation
    Réponses: 4
    Dernier message: 01/07/2005, 11h43
  2. Problème avec Ado, MySQL
    Par sylvain.g dans le forum Bases de données
    Réponses: 2
    Dernier message: 07/06/2005, 10h45
  3. problème démarrage serveur mysql
    Par vbcasimir dans le forum SQL Procédural
    Réponses: 6
    Dernier message: 25/04/2005, 14h14
  4. Problème sous requete MySQL
    Par gavelin dans le forum Langage SQL
    Réponses: 3
    Dernier message: 20/07/2004, 10h36
  5. problème de connection mysql par tcp/ip
    Par leroyphil dans le forum Administration
    Réponses: 5
    Dernier message: 04/09/2003, 18h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo