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

Qt Quick Discussion :

Accès à une base de données MySQL distante


Sujet :

Qt Quick

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2014
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2014
    Messages : 38
    Par défaut Accès à une base de données MySQL distante
    Bonsoir,

    Je viens vers vous afin d'avoir un peu d'aide. Je suis actuellement entrain de développer une petite appli avec QtQuick et QML, j’aimerais pouvoir accéder en enregistrer des données sur une base MySql distante, actuellement j'utilise un système de stockage local et j'aimerais changer pour pouvoir par la suite avoir accès à mes données sur différents postes.
    Donc voila si quelqu'un à déjà fait ceci ou une quelconque expérience je suis preneur de tous vos conseils.
    D'après mes recherches il faudrait réaliser une classe C++ qui s'occuperait de gérer la base et d'effectuer la connexion et les requêtes SQL

  2. #2
    Rédacteur/Modérateur

    Avatar de Jiyuu
    Homme Profil pro
    Développeur amateur
    Inscrit en
    Janvier 2007
    Messages
    2 456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur amateur
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 456
    Billets dans le blog
    15
    Par défaut


    C'est exactement ça. Tu trouveras ici un exemple qui devrait bien t'aider .

    Bonne continuation.

    ++


    J
    Initiation à Qt Quick et QML : Partie 1 - Partie 2
    En cas de besoin, pensez à la
    Mon site et mes tutoriaux sur Developpez.com
    Pas de question technique par MP... Les forums sont là pour ça

  3. #3
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2014
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2014
    Messages : 38
    Par défaut
    Effectivement ce liens est très intéressants, mais j'ai une petite question au moment ou je veut compiler afin de faire des test pour bidouiller un peu j'ai une erreur lorsque je tente d'ouvrir une connexion sur la bdd.
    Lorsque je tente de charger le driver j’obtiens une erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    QSqlDatabase: QMYSQL driver not loaded
    QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QPSQL QPSQL7
    Résultat ouverture QSqlError("", "Driver not loaded", "Driver not loaded")
    Pourtant QMYSQL est bien présent dans les drivers disponibles et j'ai bien un dossier sqldrivers dans mon répertoire d'installation de Qt qui lui même contient libqsqlmysql.so

  4. #4
    Rédacteur/Modérateur

    Avatar de Jiyuu
    Homme Profil pro
    Développeur amateur
    Inscrit en
    Janvier 2007
    Messages
    2 456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur amateur
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 456
    Billets dans le blog
    15
    Par défaut
    Huumm ... sur quel OS tournes tu ?
    Initiation à Qt Quick et QML : Partie 1 - Partie 2
    En cas de besoin, pensez à la
    Mon site et mes tutoriaux sur Developpez.com
    Pas de question technique par MP... Les forums sont là pour ça

  5. #5
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2014
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2014
    Messages : 38
    Par défaut
    Citation Envoyé par Jiyuu Voir le message
    Huumm ... sur quel OS tournes tu ?
    Je suis sur Linux Debian Wheezy et Qt 5.4.1. J'ai fait quelques recherche et apparemment je suis pas le seul dans ce cas, ce serait un problème de librairies, certain dise même qu'il faut recompiler le plugin sql pour Qt.

    Edit : Après quelques recherche en effectuant cette commande
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    ldd libqsqlmysql.so 
    	linux-vdso.so.1 (0x00007ffdda787000)
    	libmysqlclient_r.so.16 => not found
    	libQt5Sql.so.5 => /opt/Qt/5.4/gcc_64/plugins/sqldrivers/./../../lib/libQt5Sql.so.5 (0x00007f7362a78000)
    	libQt5Core.so.5 => /opt/Qt/5.4/gcc_64/plugins/sqldrivers/./../../lib/libQt5Core.so.5 (0x00007f736233b000)
    	libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f7362034000)
    	libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f7361c8b000)
    	libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f7361a6d000)
    	libicui18n.so.53 => /opt/Qt/5.4/gcc_64/plugins/sqldrivers/./../../lib/libicui18n.so.53 (0x00007f7361621000)
    	libicuuc.so.53 => /opt/Qt/5.4/gcc_64/plugins/sqldrivers/./../../lib/libicuuc.so.53 (0x00007f7361296000)
    	libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f7361091000)
    	libgthread-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgthread-2.0.so.0 (0x00007f7360e8f000)
    	librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f7360c87000)
    	libglib-2.0.so.0 => /lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007f736098e000)
    	libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f736068d000)
    	libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f7360477000)
    	/lib64/ld-linux-x86-64.so.2 (0x00007f7362ee5000)
    	libicudata.so.53 => /opt/Qt/5.4/gcc_64/plugins/sqldrivers/./../../lib/libicudata.so.53 (0x00007f735edee000)
    	libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007f735ebb1000)
    On voit bien que sur la 2eme ligne il ne trouve pas libmysqlclient_r.so.16, j'ai essayé de faire un lien symbolique mais toujours rien. Je pense que le problème est la sur cette ligne

  6. #6
    Rédacteur/Modérateur

    Avatar de Jiyuu
    Homme Profil pro
    Développeur amateur
    Inscrit en
    Janvier 2007
    Messages
    2 456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur amateur
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 456
    Billets dans le blog
    15
    Par défaut
    En effet ça doit venir de là.

    Voici ce que me sort cette commande :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    [charlie@arch sqldrivers]$ ldd libqsqlmysql.so
            linux-vdso.so.1 (0x00007fff7abf3000)
            libmysqlclient.so.18 => /usr/lib/libmysqlclient.so.18 (0x00007f45615d1000)
            libQt5Sql.so.5 => /usr/lib/libQt5Sql.so.5 (0x00007f456138e000)
            libQt5Core.so.5 => /usr/lib/libQt5Core.so.5 (0x00007f4560ca0000)
            libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007f456091d000)
            libc.so.6 => /usr/lib/libc.so.6 (0x00007f4560579000)
            libz.so.1 => /usr/lib/libz.so.1 (0x00007f4560363000)
            libssl.so.1.0.0 => /usr/lib/libssl.so.1.0.0 (0x00007f45600e8000)
            libcrypto.so.1.0.0 => /usr/lib/libcrypto.so.1.0.0 (0x00007f455fc71000)
            libdl.so.2 => /usr/lib/libdl.so.2 (0x00007f455fa6d000)
            libpthread.so.0 => /usr/lib/libpthread.so.0 (0x00007f455f84f000)
            libm.so.6 => /usr/lib/libm.so.6 (0x00007f455f551000)
            libicui18n.so.55 => /usr/lib/libicui18n.so.55 (0x00007f455f0eb000)
            libicuuc.so.55 => /usr/lib/libicuuc.so.55 (0x00007f455ed57000)
            libpcre16.so.0 => /usr/lib/libpcre16.so.0 (0x00007f455eaf1000)
            libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0x00007f455e7e3000)
            librt.so.1 => /usr/lib/librt.so.1 (0x00007f455e5da000)
            libsystemd.so.0 => /usr/lib/libsystemd.so.0 (0x00007f455e556000)
            libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x00007f455e340000)
            /usr/lib64/ld-linux-x86-64.so.2 (0x000055ae06df4000)
            libicudata.so.55 => /usr/lib/libicudata.so.55 (0x00007f455c889000)
            libpcre.so.1 => /usr/lib/libpcre.so.1 (0x00007f455c619000)
            libresolv.so.2 => /usr/lib/libresolv.so.2 (0x00007f455c401000)
            liblzma.so.5 => /usr/lib/liblzma.so.5 (0x00007f455c1db000)
            liblz4.so.1 => /usr/lib/liblz4.so.1 (0x00007f455bfc9000)
            libgcrypt.so.20 => /usr/lib/libgcrypt.so.20 (0x00007f455bce6000)
            libgpg-error.so.0 => /usr/lib/libgpg-error.so.0 (0x00007f455bad3000)
            libcap.so.2 => /usr/lib/libcap.so.2 (0x00007f455b8cf000)
            libattr.so.1 => /usr/lib/libattr.so.1 (0x00007f455b6c9000)
    avec /usr/lib/libmysqlclient.so.18 qui pointe vers /usr/lib/libmysqlclient.so.18.0.0 si ça peut aider.
    Initiation à Qt Quick et QML : Partie 1 - Partie 2
    En cas de besoin, pensez à la
    Mon site et mes tutoriaux sur Developpez.com
    Pas de question technique par MP... Les forums sont là pour ça

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] Accés à une base de données MySQL
    Par apt dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 06/10/2008, 19h35
  2. connexion impossible à une base de donnée mysql distante
    Par jihane1 dans le forum Eclipse Java
    Réponses: 3
    Dernier message: 09/04/2008, 12h37
  3. mettre a jour une base de donné MySQL distante
    Par gasper06 dans le forum Installation
    Réponses: 0
    Dernier message: 20/01/2008, 14h27
  4. Accès à une base de données MySQL
    Par cybernikkos dans le forum C++Builder
    Réponses: 2
    Dernier message: 18/05/2007, 22h03
  5. [JDBC]acces à une base de données mysql
    Par sehaba dans le forum JDBC
    Réponses: 13
    Dernier message: 07/12/2004, 00h39

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