Bonjour,
Je suis sur un projet (Qt 4.5) utilisant une bdd de type sqlite. Chez moi, l'exécutable fonctionne parfaitement (enfin, à mes erreurs de codages près...), mais ce qui je ne comprends pas, c'est qu'il n'arrive pas à se connecter à la bdd sur les autres PC tests. J'ai retourné la doc dans tous les sens, mais rien n'y fait.
Le .pro (en très grande partie inspiré d'un des exemples fourni avec Qt):
A vrai dire, tout ce qui est après "wince", je ne sais pas du tout à quoi ça correspond ^^ mais le problème persiste...
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 QT += sql QT += webkit QT += network TARGET = Videotek TEMPLATE = app SOURCES += main.cpp \ FenPrincipale.cpp \ FenPrincipaleFTP.cpp \ FenPrincipaleInternet.cpp \ FenPrincipaleSlotsSimples.cpp \ FenPrincipaleBDD.cpp HEADERS += FenPrincipale.h FORMS += wince*: { CONFIG(debug, debug|release):sqlPlugins.sources = $$QT_BUILD_TREE/plugins/sqldrivers/*d4.dll CONFIG(release, debug|release):sqlPlugins.sources = $$QT_BUILD_TREE/plugins/sqldrivers/*[^d]4.dll sqlPlugins.path = sqldrivers DEPLOYMENT += sqlPlugins DEPLOYMENT_PLUGIN += qsqlite } OTHER_FILES +=
Dans le cpp (idem):
Chez moi, le message d'erreur ne s'affiche pas, et je peux utiliser la bdd normalement (ajout ou suppression de données par exemple). Mais il n'y a bien que là... J'ai aussi rajouté des dll dans le dossier, à savoir qsqlite4.dll et QtSql4.dll , sans succès.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 bool FenPrincipale::createConnection() //Initialisation avec la bdd { QSqlDatabase db; db = QSqlDatabase::addDatabase("QSQLITE"); //bdd de type SQLite db.setDatabaseName("data.sql"); //Enregistrement de la bdd dans un fichier if (!db.open()) //Problème à l'ouverture { QMessageBox::critical(0, qApp->tr("Impossible d'ouvrir la base de données"), qApp->tr("Impossible d'établir une connection avec la base de données.\nAppuyez sur Annuler"), QMessageBox::Cancel); return false; } }
Je pense que le problème vient d'un programme que j'ai installé et qui n'est pas présent ailleurs: Qt, EasyPHP ou la suite Visual SQL de Microsoft par exemple. Mais je trouverais ça étrange qu'on ne puisse pas utiliser sqlite avec Qt sans avoir installé un logiciel tiers...
Merci par avance pour votre aide
Partager