經過model->rowCount();只能返回最多256個數據的長度的問題解決

在使用QT的QSqlQueryModel操做SQLite數據庫的時候,經過model->rowCount();只能返回最多256。這個問題須要經過在操做結果前先經過fetchmore()來獲取全部的結果,而後得到具體的行數。數據庫

         QT的QSqlQuery或QSqlQueryModel每次最多隻能緩存查詢結果的256條。若是查詢語句操做的結果超過256條了,也只能返回256。這樣就必然會致使在後續操做中的錯誤。緩存

     解決方法以下:fetch

1.    while(model->canFetchMore())  it

2.      {  model

3.          model->fetchMore();  bug

4.      }  方法

5.      數據

6.     for(int i = 0; i < model->rowCount(); i++)  查詢

7.      while

8.     {  

9.      

10.      qDebug()<<model->data(model->index(i,0)).toString();  

11.    

12.   }  

相關文章
相關標籤/搜索