Bonjour, cliquez-ici pour vous inscrire et participer au forum.
  • Login:



+ Répondre à la discussion
Page 1 sur 4 12 3 DernièreDernière
Affichage des résultats 1 à 15 sur 46

Qt Connexion base de données Mysql

  1. defender19

    Date d'inscription
    août 2010
    Messages
    210

    Qt Connexion base de données Mysql

    Bonjour!

    Après pas mal de recherches sur la doc, des exemples, des forums, j'arrive pas à établir une connexion ou faire des reqûete avec ma base de données Mysql!

    J'ai Mysql d'installé sur mon ordi, j'ai une base de données test avec deux tables remplies, j'ai eu beau essayé, je ne suis pas arrivé à soit me connecter soi afficher les données d'une table!

    Premier essai de connection qui ne marche pas :

    Code:
    QSqlDatabase *db = new QSqlDatabase;
        db->addDatabase("QSQLITE"); //-------> QMYSQL ne marche pas... 
        db->setHostName("localhost");
        db->setDatabaseName("test");
        db->setUserName("root");
        db->setPassword("antoine");
        db->open();
    
    if(!db->open()){
            texte->setPlainText("Erreur");//---- s'affiche toujours!
        }
    Autre méthode trouvé qui ne fait pas d'erreur à la connexion mais n'affiche rien:

    Code:
    QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
            db.setDatabaseName("test");
    if(!db.open()){
                texte->setPlainText("erreur");
            }
    QSqlQuery query("SELECT  ID FROM saisir;");
    
            while (query.next()) {
                QString hello = query.value(0).toString();
                texte->setPlainText(hello);
            }
    Merci de m'aider! J'ai pas tout compris la dessus!

    -----

     


    • Publicité



  2. photon57

    Date d'inscription
    septembre 2011
    Messages
    2 055

    Re : Qt Connexion base de données Mysql

    Hello,

    Si tu arrives à accéder à ta base par l'interface mysql (donc le serveur est ok...), le moyen le plus simple est de voir ce qui se passe avec lasterror pour avoir plus d'info (mot passe, user, ...)
     

  3. defender19

    Date d'inscription
    août 2010
    Messages
    210

    Re : Qt Connexion base de données Mysql

    Pour le premier cas de figure?

    Il affiche erreur et en consol dans Qt il affiche : QSqlQuery::exec: database not open

    Je rajoute : QSqlError error=db->lastError();
    Comment je l'affiche?
     

  4. photon57

    Date d'inscription
    septembre 2011
    Messages
    2 055

    Re : Qt Connexion base de données Mysql

    Toujours en suivant la doc que je t'ai donné en lien ... http://developer.qt.nokia.com/doc/qt-4.8/qsqlerror.html

    T
    u as tester ta requête évidemment ?
     

  5. defender19

    Date d'inscription
    août 2010
    Messages
    210

    Re : Qt Connexion base de données Mysql

    Avec :

    QSqlError error=db->lastError();
    QString er=error.databaseText();
    texte->setPlainText(er);

    Il affiche ; Driver not loaded
     


    • Publicité



  6. photon57

    Date d'inscription
    septembre 2011
    Messages
    2 055

    Re : Qt Connexion base de données Mysql

    addDatabase est static ...
    essaye db=QSqlDatabase::addDatabase( "QMYSQL" );
     

  7. defender19

    Date d'inscription
    août 2010
    Messages
    210

    Re : Qt Connexion base de données Mysql

    Alors avec :

    Code:
    QSqlDatabase db;
        db=QSqlDatabase::addDatabase("QMYSQL");
        db.setHostName("localhost");
        db.setDatabaseName("test");
        db.setUserName("root");
        db.setPassword("antoine");
        db.open();
    
        if(!db.open()){
            texte->setPlainText("ok");
        }
    
        QSqlQuery query("SELECT  ID FROM saisir;");
            while (query.next()) {
                QString hello = query.value(0).toString();
                texte->setPlainText(hello);
                        }
        QSqlError error=db.lastError();
         QString er=error.driverText();
        texte->setPlainText(er);
    En console :
    QMYSQL driver not loaded
    QSqlDatabase: available drivers: QSQLITE
    QSqlQuery::exec: database not open

    Il affiche : Driver not loaded

    En remplacant par QSQLITE, pas d'erreur mais n'affiche rien du tout non plus...
     

  8. photon57

    Date d'inscription
    septembre 2011
    Messages
    2 055

    Re : Qt Connexion base de données Mysql

    Si tu as une base MySql, il ne faut pas essayer le driver sqlite ça ne servira pas à grand chose. As tu le driver Mysql ? Linkes-tu ton projet avec la lib msyqlclient_r ?
     

  9. defender19

    Date d'inscription
    août 2010
    Messages
    210

    Re : Qt Connexion base de données Mysql

    Il me semble que non...

    En fait je transpose un programme que j'avais fait en java en C++, avec Java j'avais installé le driver Mysql en effet.

    La dans : C:\QtSDK\Desktop\Qt\4.7.4\ming w\plugins\sqldrivers

    je n'ai que :

    qsqlite4.dll
    et qsqlited4.dll avec leurs deux fichiers a.

    Après je link rien du tout :S
     

  10. photon57

    Date d'inscription
    septembre 2011
    Messages
    2 055

    Re : Qt Connexion base de données Mysql

    Alors dans un premier suivre la doc pour le plugin mysql pour qt : http://doc.qt.nokia.com/4.7-snapshot/sql-driver.html#how-to-build-the-mysql-driver-for-mingw-users


     

  11. defender19

    Date d'inscription
    août 2010
    Messages
    210

    Re : Qt Connexion base de données Mysql

    Vu que je trouve ça bien complexe et que je trouve pas les fichiers à télécharger, c'est pas plus simple que je télécharge SQLITE ?
     

  12. photon57

    Date d'inscription
    septembre 2011
    Messages
    2 055

    Re : Qt Connexion base de données Mysql

    Sqlite est simple et performant dans les limites d'utilisation préconisées. Une base = un fichier, surcouche sql relativement complète ... à essayer. Qt a quand même besoin de son driver,mais si tu l'as déjàinstallé ...
     

  13. defender19

    Date d'inscription
    août 2010
    Messages
    210

    Re : Qt Connexion base de données Mysql

    Je n'ai rien installé en plus de Qt, mais il est déjà là par défaut on dirait...
    J'ai pas trouvé non plus ou télécharger pour installer Sqlite.

    Bref, je re teste pour le driver MySQL
     

  14. photon57

    Date d'inscription
    septembre 2011
    Messages
    2 055

    Re : Qt Connexion base de données Mysql

    Downloade sqlite (http://www.sqlite.org/), crée une base, et teste avec ton prog.
     

  15. defender19

    Date d'inscription
    août 2010
    Messages
    210

    Re : Qt Connexion base de données Mysql

    J'avais trouvé le site mais dans download, ya que des fichiers qui lancent des consoles... Rien qui s'installe!

    Désolé, je suis dessus depuis hier, j'en peux plus
     


    • Publicité




 

Discussions similaires

  1. connexion a une base de données a travers sharepoint
    Par mehdii dans le forum Logiciel - Software - Open Source
    Réponses: 0
    Dernier message: 04/05/2010, 21h37
  2. base de données MySQL (methode merise)
    Par poste22 dans le forum Logiciel - Software - Open Source
    Réponses: 4
    Dernier message: 13/03/2010, 17h01
  3. ActionScript, Base de données MySQL
    Par lui dans le forum Logiciel - Software - Open Source
    Réponses: 6
    Dernier message: 07/05/2009, 08h32
  4. importation base de donnée MySQL
    Par aneurysm55 dans le forum Internet - Réseau - Sécurité générale
    Réponses: 1
    Dernier message: 13/03/2007, 18h24
  5. Connexion Java - BD MySQL sur un serveur distant
    Par Witten dans le forum Internet - Réseau - Sécurité générale
    Réponses: 3
    Dernier message: 19/04/2005, 21h09