Probleme de connexion odbc

neofenix Messages postés 145 Date d'inscription mercredi 12 avril 2006 Statut Membre Dernière intervention 11 mars 2010 - 12 juin 2006 à 20:57
neofenix Messages postés 145 Date d'inscription mercredi 12 avril 2006 Statut Membre Dernière intervention 11 mars 2010 - 14 juin 2006 à 19:30
salut tout le monde voila j'ai recupéré un code de connnexion odbc sur
cppfrance mais le probleme c'est que je n'arrive pas a me connecter a
ma base de donnée mysql (erreur lorsque je fais SQLCONNECT)

je poste mon code si vous pouviez m'aider je vous serais reconnaissant

merci d'avance.

#pragma comment(lib, "odbc32.lib")


// Les types SQL

SQLHENV henv;

SQLHDBC hdbc;

SQLHSTMT hstmt;

 

void connec(HWND hWnd )

{

    // Déclaration des variables SQL

    SQLRETURN retcode;

    SQLINTEGER cblogin, cbmotdepass;

    SQLCHAR szlogin[MAIN_LEN+1],szmotdepass[MAIN_LEN+1];

     

    // Déclaration des variables Standart

    // Exemple de requete

    char requete[1024+1]="select * from joueur";

  

    char Serveur[MAIN_LEN]="192.168.23.214";

    char Login[MAIN_LEN+1]="fenix";

    char Pwd[MAIN_LEN+1]="fenix";   

    FILE *fp;

                 

    // Connexion à la base de données

    retcode=SQLAllocHandle(SQL_HANDLE_ENV, SQL_NULL_HANDLE, &henv);

             

    if(retcode SQL_SUCCESS || retcode SQL_SUCCESS_WITH_INFO)

    retcode=SQLSetEnvAttr(henv, SQL_ATTR_ODBC_VERSION, (void*)SQL_OV_ODBC3,0);

                 

    if(retcode SQL_SUCCESS || retcode SQL_SUCCESS_WITH_INFO)

    retcode=SQLAllocHandle(SQL_HANDLE_DBC, henv, &hdbc);

    else

    MessageBox(hWnd,"Erreur sur l'instruction SQLAllocHandle !","Erreur",MB_OK);

     

    // Vérification du Lien ODBC, Login Et Pwd       

    if(retcode SQL_SUCCESS || retcode SQL_SUCCESS_WITH_INFO)

    retcode=SQLConnect(hdbc, (SQLCHAR*)Serveur, SQL_NTS, (SQLCHAR*)Login, SQL_NTS, (SQLCHAR*)Pwd, SQL_NTS);

    else

    MessageBox(hWnd,"Erreur sur l'instruction SQLSetEnvAttr !","Erreur",MB_OK);

                     

    if(retcode SQL_SUCCESS || retcode SQL_SUCCESS_WITH_INFO)

    retcode=SQLAllocHandle(SQL_HANDLE_STMT, hdbc, &hstmt);

    else

    MessageBox(hWnd,"Erreur sur l'instruction SQLConnect !","Erreur", MB_OK);

    DisplayLastError(hWnd);

                 

    // Execution de la requete

    if(retcode SQL_SUCCESS || retcode SQL_SUCCESS_WITH_INFO)

    retcode=SQLExecDirect(hstmt, (SQLCHAR*)requete, SQL_NTS);

    else

    MessageBox(hWnd,"Erreur sur l'instruction SQLAllocHandle2 !","Erreur",MB_OK);

  

3 réponses

neofenix Messages postés 145 Date d'inscription mercredi 12 avril 2006 Statut Membre Dernière intervention 11 mars 2010
13 juin 2006 à 14:04
j'ai oublié de le signaler,  je pense que l'erreur a lieu a cause
d'un probleme de drivermais je sais pas du tt comment sa marche
0
Trinita16 Messages postés 199 Date d'inscription lundi 22 juillet 2002 Statut Membre Dernière intervention 14 juin 2006
14 juin 2006 à 16:57
Slt,

As tu le client Mysql d'installé ? et si oui as tu créé le lien nommé "192.168.23.214" ?

Petit complément sur la source, ce code ne permet pas de se connecter directement a un serveur de base de donnée (que se soit mysql, oracle, sqlserver et les autres ... ), il passe par le gestionnaire odbc de ton système d'exploitation. Il faut pour cela avoir les drivers mysql (dans ton cas) et ensuite configurer le lien odbc (sous xp voir dans le panneau de configuration, outils d'administration ) ...

Bon courage,

[8D] [:p]

Trinita,

(Nous savons tous lire, alors passons un peu de temps sur les documentations. Pensons aux personnes qui les rédigent [:D] [;)] )
0
neofenix Messages postés 145 Date d'inscription mercredi 12 avril 2006 Statut Membre Dernière intervention 11 mars 2010
14 juin 2006 à 19:30
j'ai configurer le lien odbc dans sources de données odbc (panneau de
configuration) car je fais le test sa fonctionne. et non je n'ai pas de
lien nommé 192.168.23.214 c'est l'adresse ip de mon serveur. je
voudrais savoir qu'entends tu par serveur mysql ???


Sinon sais tu comment faire pour se connecter directement a un serveur
mysql car ensuite l'application que je developpe sera utilisé sur
plusieurs pc et je ne voudrais par devoir configurer a chaque fois le
lien odbc ni installé le client mysql
0
Rejoignez-nous