Bonjour à tous
Je dispose d'une base MySQL à laquelle je me connecte via ODBC. La connexion fonctionne (testée avec OOo base), et dans mon main() :
db.tables() renvoie bien la liste des tables. Mais quand je fais une requête même très simple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 QSqlDatabase db("QODBC"); db.setDatabaseName("nom_dsn"); db.open(); // renvoie true (vérifié)
j'obtiens en sortie de l'application l'erreur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 QSqlQuery q("SELECT * FROM table_qui_existe", db); q.exec();
Pourtant dans OOo une fois la connexion établie j'arrive à voir le contenu de la base, donc du côté d'ODBC tout devrait bien marcher.
Code : Sélectionner tout - Visualiser dans une fenêtre à part QODBCResult::exec: Unable to execute statement: " [Microsoft][Gestionnaire de pilotes ODBC] Erreur de séquence de la fonction"
[edit]Il semble qu'il n'y ait pas besoin de faire q.exec() en plus de la construction. Dans ce cas plus d'erreur, mais q.size() = -1 alors que ma table contient effectivement des lignes.[/edit]
Des idées ? Merci!
Partager