Russian Qt Forum

Qt => Базы данных => Тема начата: MegaMozg от Сентябрь 07, 2015, 18:48



Название: QSqlQueryModel игнорировать индекс
Отправлено: MegaMozg от Сентябрь 07, 2015, 18:48
Приветствую. Работаю с SQLite, есть следующий простой код:
Код:
model = new QSqlQueryModel();
...
model->setQuery(queries[i]);
...
while(model->canFetchMore())
                model->fetchMore();
...
for(int j = 0; j < model->rowCount(); ++j)
{
                    // здесь проходим по записям результата запроса
                   
                   model->record(j).value(0).toString();
...
                   
}

Запросы всегда производятся на выборку одного столбца из таблицы.
Суть проблемы: если в БД из столбца сформирован индекс, то значения этого столбца извлекаются из модели в отсортированном порядке. Как сие можно отключить и получить данные в том порядке, в каком они расположены в таблице?


Название: Re: QSqlQueryModel игнорировать индекс
Отправлено: GraninDm от Сентябрь 11, 2015, 16:15
SQL такой порядок гарантировать не может.
Если есть автоувеличивающееся инкрементное поле, то проще упорядочить по нему.
select name from table order recordid;