我有类似于我见过的一些问题,但解决方案似乎不适合我,所以我会添加一个新的之一:QSqlRecord:从QT中的SQLite表访问数值,结果为空
我想从一个SQLite访问表的数值(最高的用户ID)到我的QT程序,用下面的查询:
SELECT Name, MAX(ID) FROM User_lib;
这个工作从命令外壳,与预期结果。
然后我尝试与访问最大ID值:
QSqlQuery qry_ID;
qry_ID.prepare("SELECT Name, MAX(User_lib.ID) FROM User_lib");
qry_ID.exec()
qDebug() << qry_ID.record().value("ID").toInt();
结果为零(和空,如果我访问“姓名”与toString()
)
另外,作为测试
qDebug() << "Number of Rows: " << qry_ID.size();
我在其他几个答案中看到给我-1。 在另一方面,
qDebug() << "Number of columns: " << qry_ID.record().count();
给我按预期的“2列数”。看起来查询没有结果。
起初我以为我的查询有问题,但同样的事情发生时,当我试图计数查询中的行清楚地工作正确(表显示,我可以正确添加元素等),所以我认为我必须在QT中做错了什么。
如何获得'qry_ID'值? – vahancho
这是查询名称:qry_ID.prepare(“SELECT Name,MAX(User_lib.ID)FROM User_lib”);将相应地编辑我的问题。 – user30248
但你执行它?如果是,如何?请展示更多代码。 – vahancho