QT开发,使用ODBC接口,查询mysql出现QSqlQuery::value: not positioned on a valid record
问题:QT Craetor 集成开发环境开发的图书管理系统,新建的DataBase类用于实现对数据库的操作,继承于QObject,与数据库的连接使用ODBC提供的接口,数据库是MySQL5.7,在使用如下查询语句时报错:
报错信息:QSqlQuery::value: not positioned on a valid record
查询了一下相关资料:
查阅到的解决办法
按照文章提供的解决办法尝试,问题仍然存在。
后来在各个位置打印了一些信息,发现qDebug<<condition<<content<<“上"中的变量condition和content能正常打印,但是"上"打印出来是”??"
想到之前做窗口的时候中文设置的窗口标题也会出现乱码,当时查到的解决办法是给对应类的.cpp文件加上如下所示代码:
#pragma execution_character_set("utf-8")
解决办法:
给database.cpp文件加上如上所示代码块:
编辑测试信息:
测试输出成功:
完结!撒花!记录一下!