2017-04-26 3 views
0

Je suis nouveau à travailler sur SQLAPI ++. J'ai tout installé, c'est-à-dire MYSQL, SQLAPI ++ et j'utilise Code: Block ++ comme éditeur pour mon programme C++. J'essayais de me connecter à la base de données que j'avais créée dans le MYSQL, mais je suis incapable de le faire. Je vois l'erreur suivante lorsque j'appelle Connect() écrit en SQLAPI ++Impossible de se connecter à MySQL en utilisant SQLAPI ++

Le processus a renvoyé -1-73741819 (0xC0000005) le temps d'exécution: 0.431s.

Le MYSQL est en cours d'exécution sur ma machine locale sur le port non 3306.

int main(int argc, char* argv[]) 
{ 
    SAConnection con; 
    SACommand cmd; 
    int id =0; 
    string name = ""; 
    cout<<"Error Thrown"; 
    try 
    { 
     con.Connect ("sampledb", 
        "root", 
        "abcd", 
        SA_MySQL_Client); 
     std::cout<<"We are connected!\n"; 

     cout<<"Error Thrown"; 
     cmd.setConnection(&con); 

     cmd.setCommandText("SELECT * FROM sampledb.table1"); 
     cmd.Execute(); 

     while(cmd.FetchNext()) 
     { 
      id = cmd.Field("id").asLong(); 
      name = cmd.Field("name").asString(); 
      std::cout<<id; 
      std::cout<<name; 
     } 

     con.Commit(); 

     con.Disconnect(); 
     std::cout<<"We are disconnected!\n"; 
    } 

    catch(SAException &x) 
    { 

     try 
     { 

      con.Rollback(); 
     } 
     catch(SAException &) 
     { 
     } 

     std::cout<<"Printing Error Text"; 
     printf("%s\n", (const char*)x.ErrText()); 
    } 
    return 0; 
} 

Le code compile avec succès. Je cours actuellement sur Windows 10. Je me demande ce qui pourrait être faux avec le code ci-dessus. J'ai un doute avec la façon dont nous mentionnons l'adresse de la base de données dans la fonction Connect ou semble-t-il être un autre problème?

Répondre

0

J'ai essayé de tout réinstaller. Cette fois, j'ai utilisé CodeBlock 10.0.5, MySQL 5.5 et MySqlConnector C++ 1.1, et cela a fonctionné sans problèmes cette fois-ci. Probablement c'était un problème de compatibilité plus tôt qui causait l'exception. Auparavant, j'avais installé la dernière version de CodeBlock, à savoir 16 et MySQL 5.7 avec le connecteur SQL