Добрый день уважаемые форумчане. Есть простейший код выборки из базы данных sqlite. Проблема в том, что в базе есть очень большое число различных строк. При работе с небольшими базами, проблем нет. А при большой базе, программа вылетает с ошибкой out of memory.
if(!CreateConnection())
{
return;
}
QSqlQuery query;
if(!query.exec("SELECT * FROM adress"))
{
qDebug() << query.lastError();
return;
}
QString str;
while(query.next())
{
//str= query.value(0).toString();
//qDebug() << domen;
}
SELECT * FROM ... LIMIT x OFFSET y ORDER BY ...
SELECT * FROM ... LIMIT x OFFSET y ORDER BY ...
while(query.next())
{
}
Я посмотрел исходники, там драйвер кеширует результаты, поэтому да, вы правы, он все съел
Попробуйте LIMIT/OFFSET как я писал выше.
Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)