我有類似於我見過的一些問題,但解決方案似乎不適合我,所以我會添加一個新的之一: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