Russian Qt Forum

Qt => Базы данных => Тема начата: asrael от Январь 05, 2011, 17:23



Название: SQLite и QSqlTableModel
Отправлено: asrael от Январь 05, 2011, 17:23
Такая проблема.. привязываю таблицу в базе SQLite к QSqlTableModel, а её потом запихиваю в QTableView. Но, как только записей в таблице становится больше, чем 256, начинается проблема с обращением к записям, номера которых больше, чем 256. Та же фигня происходит, если привязывать столбец в таблице к QComboBox.
Проблему с QTableView решил, правда по-индийски:
Код:
    //нужно выделить конкретную строку в таблице
    int rowid = tvBase->currentIndex().row();

    patients->select();

    for (int i=0; i<rowid+1; i=i+5)
    {
    tvBase->selectRow(i);
}
    tvBase->selectRow(rowid);
после этих манипуляций он кое-как выделяет.. может, кто-то знает более простой способ?


Название: Re: SQLite и QSqlTableModel
Отправлено: asrael от Январь 05, 2011, 18:44
сам спросил - сам же и отвечаю..
Цитировать
Select в QSqlTableModel для SQLite запрашивает только первые 256 рядов. Чтобы полностью заполнить модель надо делать так:
Код:
model.select();
while(model.canFetchMore())
        model.fetchMore();