首页 > 代码库 > 错误 :QSqlQuery::value: not positioned on a valid record

错误 :QSqlQuery::value: not positioned on a valid record

前提:
win xp环境; Qt SDK版本v1.1.3; 库文件版本4.7.4;
数据库驱动类型: QODBC

有两次遇到过如题所述的warning.
均自行解决.

出现场合与解决方法如下:

第一次, 使用QSqlRelationalTableModel模型.将数据库的第一列设置为QSqlRelation
model->setRelation( 0, QSqlRelation(  "name_of_sql", "id", "name"));//warning
然后在利用QSqlRelationalTableModel编辑数据库时出现如题报警.
解决方法:
不把数据库第一列设为QSqlRelation

还有一次,建立数据库时,将第二列设为primary key
然后在编辑数据库时出现如题报警.
解决方法:
把第一列设为primary key

不是很懂发生这种问题的原理,但是都误打误撞的解决了.分享给大家.

错误 :QSqlQuery::value: not positioned on a valid record