crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> QSqlQuery считывание данных..
kibsoft
  опции профиля:
сообщение 17.2.2010, 16:53
Сообщение #1


Участник
**

Группа: Участник
Сообщений: 180
Регистрация: 21.7.2009
Из: Самара
Пользователь №: 928

Спасибо сказали: 14 раз(а)




Репутация:   2  


Есть ли способы считать все данные результата запроса без цикла while(query.next()) ? Мне надо считать все данные в QHash. В таблице 52000 записей и все это считывание занимает 6 секунд..
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
PunX
  опции профиля:
сообщение 18.4.2010, 21:21
Сообщение #2


Студент
*

Группа: Участник
Сообщений: 56
Регистрация: 12.4.2009
Из: Димитровград
Пользователь №: 676

Спасибо сказали: 0 раз(а)




Репутация:   0  


В БД под управлением postgresql делаю запрос:
QSqlQuery q;
QSqlRecord rec = q.record();
QString res;
QString str = "SELECT * FROM \"Z\";";
if(!q.exec(str)){
    QMessageBox::warning(0,"warning","error of query!");
}
while(q.next()){
res = q.value(rec.indexOf("?column?")).toString();
QString result = QString("%1").arg(res);
QMessageBox::information(0,"info",res);
}

в результате получаю что в переменной res пусто и ошибку "QSqlQuery::value: not positioned on a valid record", хотя в БД запись есть. В базе тип поля значение которого вывожу numeric.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


10 чел. читают эту тему (гостей: 10, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 15.1.2025, 1:54