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() :
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é)
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
QSqlQuery q("SELECT * FROM table_qui_existe", db);
q.exec();
j'obtiens en sortie de l'application l'erreur
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"
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.

[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!