TutorielsVous débutez ? C'est ici qu'on commence !
Mon compte
Recherche
Livre d'or
PublicitéVous devez être inscrit pour pouvoir poster des messages
| Page : 1 | |||||
| Auteur | Message | ||||
|---|---|---|---|---|---|
| 1 visiteur sur ce sujet (1 anonyme) | |||||
| Page : 1 | |||||
Maître_Noïr
|
# Posté le 27/06/2008 à 09:43:52 | ||||
|
Groupe : Membres |
Bonjour tout le monde, c'est encore moi ! J'ai encore un problème mais cette fois-ci pour me connecter à une BDD avec Qt...
J'ai bien modifié le fichier .pro en ajoutant la ligne Code : C++
Cependant, lors de l'exécution du programme, et plus particulièrement lorsque ce code est exécuté : Code : C++
le programme plante et me demande si je veux envoyer les infos de débogage patati patata (le truc de windows quoi...) Sauriez-vous d'où ce problème peut venir, ce que je devrais faire ou ne pas faire pour que ça marche ? Merci.
Édité
le 06/07/2008 à 20:54:00
par Maître_Noïr
|
||||
altic
|
# Posté le 27/06/2008 à 09:45:38 | ||||
![]() Groupe : Membres |
Il manque peut-être la dll du module QtSQL.
|
||||
Maître_Noïr
|
# Posté le 28/06/2008 à 20:31:23 | ||||
|
Groupe : Membres |
Non elle y est il n'y a pas d'erreur quand je lance le programme, seulement quand ces lignes sont exécutées...
|
||||
Orionis
|
# Posté le 28/06/2008 à 21:32:52 | ||||
ooprog![]() Groupe : Membres |
J'ai une erreur similaire, le plugin MySQL est compilé et lors de l'exécution du programme (le code est celui de la doc de Qt), l'erreur est :
Code : Autre
Ne peut-on donc pas créer de base de données en local avec MySQL ? |
||||
Maître_Noïr
|
# Posté le 06/07/2008 à 20:52:46 | ||||
|
Groupe : Membres |
Bon j'ai recompilé Qt avec le plugin MySQL et il ne me met plus d'erreur ni rien. Ma BDD est sur un serveur, et lorsque le script est effectivement exécuté, rien ne se passe (mon pare-feu ne me demande pas si je veux autoriser la connexion), j'en déduis donc qu'il n'y a pas de connexion, mais pourquoi?
Merci de vos réponses !
Édité
le 06/07/2008 à 20:54:49
par Maître_Noïr
|
||||
Tetris
|
# Posté le 07/07/2008 à 00:26:52 | ||||
![]() Groupe : Membres |
@ Maître_Noïr
J'immagine que tu sais déjà ce qui suit, mais juste au cas ou (et peut être que ca pourra aider quelqu'un d'autre) ... Tu as testé le booléen que renvoit la méthode QSqlDatabase::open()? Si il est a false il n'y a effectivement pas de connection, et tu peux avoir plus d'info avec la méthode QSqlDatabase::lastError(). Cette dernière renvoit un QSqlError, tu peux en avoir un QString avec la méthode QSqlError::text(). @ tout le monde Je suis un vrai zéro qui n'y connais rien Je cherche a faire tourner une base de donnée en interne (sans serveur, distant ou local, du moins dans les apparences) avec Qt. C'est possible?J'ai bien trouvé des infos dans la doc de Qt, mais je ne comprend pas tout. En gros il faudrait utiliser une version surchargée de QSqlDatabase::addDatabase(...) qui prend en argument un driver. J'ai pas encore réussi a la faire marcher correctement, et je ne suis même pas sûr que ca soit ce qu'il me faut Quelqu'un pourrait me donner un p'tit coup de pouce? ![]() EDIT: 1) J'ai recompilé Qt selon ce tuto pour y inclure le plugin MySQL ... Ca ne marchait toujours pas. 2) J'ai noté que l'installation de MySQL n'avait pas rajouté <mysql>/bin dans le path ... Ca ne marchait toujours pas. 3) J'ai fouillé les forums et a la troisième page du topic du tuto en lien plus haut j'ai trouvé ca: Citation : IrmatDen Après avoir lu la doc du cache, je suis allé faire un tour dans la BdR (regedit.exe pour y aller, je sais pas si tu connais déjà ou pas) et ai effacé toutes les entrées qmysql* dans: > HKEY_CURRENT_USER\Software\Trolltech\OrganizationDefaults\Qt Plugin Cache 4.3.debug\<le chemin vers le répertoire Qt sur ton pc>\plugins\sqldrivers > HKEY_CURRENT_USER\Software\Trolltech\OrganizationDefaults\Qt Plugin Cache 4.3.false\<le chemin vers le répertoire Qt sur ton pc>\plugins\sqldrivers Une fois ceci fait, relance ton appli, et hop, ça devrait être tout bon. Pour info, une entrée invalide du cache debug est du type: 0 0 unknown 2008-01-18T21:51:52 et une valide: 40301 1 Windows os-msvc debug full-config 2008-01-18T21:51:52 Ca ne marche toujours pas, mais ce n'est plus le même message Cette fois ci je pense que ca marchera pour toi Maître_Noïr.4) Et je cherche toujours a savoir si il est possible de faire fonctionner une base de donnée en "boite noire" ... C'est a dire sans trace exterieure de l'utilisation d'une BDD (si ce n'est un fichier pour stocker les données). EDIT 2: Je cherche toujours Quelque chose qui m'intrigue depuis quelques temps maintenant et ce passage dans la doc de Qt:Citation : Doc de Qt QSqlDatabase QSqlDatabase::addDatabase ( QSqlDriver * driver, const QString & connectionName = QLatin1String( defaultConnection ) ) [static] This is an overloaded member function, provided for convenience. This function is useful if you need to set up the database connection and instantiate the driver yourself. If you do this, it is recommended that you include the driver code in your own application. For example, setting up a custom PostgreSQL connection and instantiating the QPSQL driver can be done like this: #include "qtdir/src/sql/drivers/psql/qsql_psql.cpp" [...] Remember that you must link your application against the database client library as well. The simplest way to do this is to add lines like the ones below to your .pro file: unix:LIBS += -lpq win32:LIBS += libpqdll.lib You will need to have the client library in your linker's search path. Suis la liste des drivers, dont mysql/qsql_mysql.cpp Mais quand je tente de compiler avec juste l'include (adaptée) et la ligne dans le .pro en plus ca plante joliement. ... Par contre j'ai été voir les exemples de QT pour sql. Ils marchent, et comme je voudrais (je crois). J'ai été voir le code et je vois pas ce que je peut faire de travers, que ce soit pour le .pro, les includes ou le code ... Le message que j'ai c'est "Access Denied [bla bla]". Je vois pas pourquoi moi j'ai pas droit et l'exemple de QT lui si ![]() moi: Code : C++
lui: Code : C++
Bon ca devient le bordel, même dans ce post Je lache l'affaire pour quelques heures. Si vous avez une idée lumineuse ...
Édité
le 07/07/2008 à 06:37:30
par Tetris
|
||||
Retour au forum "Langage C++" ou à la liste des forums
Vous devez être inscrit pour pouvoir poster des messages
Changer de design |
En savoir plus |
Plan du site |
Politique d'accessibilité |
Règles |
RSS tutoriels |
RSS news
Édité par Simple IT SARL :
Nous contacter
| Notre blog | Revue de presse | Publicité
Y'a plus rien à lire, faut remonter maintenant !
Hébergement web - Correction de tutoriels - Créer un site
Vous souhaitez apparaître ici ? Contactez-nous.
215 Zéros connectés |
7 requêtes |
0.0372s (0.0182s)
