[Qt] Le driver QMYSQL ne répond pas

a marqué ce sujet comme résolu.

Bonjour,

Je m’entraîne à coder un logiciel pouvant se connecter à une base de données située en interne (localhost) comme en externe (sur un serveur hébergé fait pour), avec Qt, son plugin QtSql et tout le tralala. Malheureusement, il s’avère que je rencontre des difficultés. En effet, j’ai beau avoir arrangé le code quitte à indiquer "localhost" à la fonction setHostName(), j’ai l’impression que Qt ne comprend absolument pas ce que je veux faire, alors que bon, j’essaye juste de me connecter à une bête base de données.

libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile
QImage::scaled: Image is a null image
QSqlDatabase: QMYSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QODBC QODBC3 QPSQL QPSQL7
libpng warning: iCCP: known incorrect sRGB profile
QSoundEffect(qaudio): Error decoding source
QSqlQuery::prepare: database not open
QSqlQuery::prepare: database not open
QSqlQuery::prepare: database not open
QSqlQuery::prepare: database not open

J’héberge mon serveur localhost avec Wampserver 3.1.0. J’ai même utilisé l’exemple de la documentation pour m’y introduire doucement, mais rien n’y fait, la connexion ne veut pas s’effectuer et je ne peux pas continuer le développement…

Merci d’avance à toute personne qui voudrait m’aider.

+0 -0

Comme ca, je dirais que tu n’as pas installe la lib necessaire.

Si tu es sous linux, fais un ldd de ton programme, tu verras qu’il y aura un truc du genre libmysqlclient => not found. Sous windows il doit y avoir un moyen similaire, mais je ne le connais pas. Mais ca ressemble dans tous les cas a une lib pas installe

Je suis sous Windows en fait… Après est-ce que cela se peut réellement alors que je programme avec Qt Creator, signifiant que j’ai supposément la bibliothèque Qt en intégralité ?

Néanmoins si tu parles de librairies réellement destinées à chacun de ces drivers, fais moi en part car je ne suis pas sûr d’avoir compris…

+0 -0

Pour des raisons de licences, Qt ne fournit pas les libs des BDD (sauf SQLite), juste des plugins qui permettent de faire l’interface entre Qt et les drivers des BDD (les libs qui sont dans plugins/sqldrivers). Il faut donc installer ces libs. De memoire, c’est libmysql-client pour MySQL https://dev.mysql.com/downloads/connector/c/

+0 -0

Ah, je vois, merci de m’en faire part. Ainsi, une fois installée, il faut que je l’inclue à chaque appel vers la connexion à la BDD ou une seule fois dans le qmake ? Je ne suis pas familier avec ce genre d’installations.

+0 -0

Euh attends, ce n’est plutôt un Connector C++ qu’il faut prendre ? Après lorsque je choisis l’installateur Windows je suis redirigé vers l’installateur global de MySql (ce dont j’ai pas besoin ayant Wamp) mais c’est un peu perturbant d’avoir une version C quand "tout le monde" "utilise" le C++…

+0 -0

Bon j’ai pris la librairie Connector C, mais j’arrive pas à cerner la différence. Elle est plus profonde que le simple écart du langage de programmation ? Vu que tu me parles d’API et d’ABI. Je vais vérifier pour Wamp.

+0 -0

Bon et bien, j’ai inséré cette ligne dans le fichier .pro, téléchargé la lib Connector C… il se passe la même chose. J’essaie de voir pour wamp mais je ne pense pas que ça résolve ce problème.

+0 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte