Russian Qt Forum

Qt => Базы данных => Тема начата: arty_57 от Март 22, 2011, 20:18



Название: создание БД в приложении под Symbian
Отправлено: arty_57 от Март 22, 2011, 20:18
Заранее извиняюсь, тема скорее всего уже где то обсуждалась, но к сожалению не нашел.
Собственно проблема: хочу написать приложение под Symbian на Qt  естесственно. В приложении должна создаваться  и редактироваться БД. В книге шлее qt 4.5 так и не понял как создать БД. там вроде только соединяются с ней. Я так понимаю она уже существует. Мне нужно в самом приложении создать SQLite базу данных. и сохранить этот файлик каким нибудь образом. В примерах Qt БД создается в ":memory:" я так понимаю это оператива. Так и не разобрался ???


Название: Re: создание БД в приложении под Symbian
Отправлено: panAlexey от Март 22, 2011, 21:54
Код:
	QSqlDatabase m_db  = QSqlDatabase::addDatabase("QSQLITE","MDRestr");
m_db.setDatabaseName(_fullPath);
if (!m_db.open())
{
llog->writeToLog(QString(QObject::tr("Can not create meta db: \"%1\"")).arg(_fullPath));
return false;
}


Название: Re: создание БД в приложении под Symbian
Отправлено: arty_57 от Март 23, 2011, 17:38
Код:
	QSqlDatabase m_db  = QSqlDatabase::addDatabase("QSQLITE","MDRestr");
m_db.setDatabaseName(_fullPath);
if (!m_db.open())
{
llog->writeToLog(QString(QObject::tr("Can not create meta db: \"%1\"")).arg(_fullPath));
return false;
}
Огромное спасибо. Я так понимаю БД будет создана в пути, который в переменной _fullPath?
И еще вопрос, никто не сталкивался с такой проблемой под Symbian? куда там нужно сохранять файлы? я просто нубас в этом деле. Заранее спасибо



Название: Re: создание БД в приложении под Symbian
Отправлено: arty_57 от Март 23, 2011, 23:18
вылетает ошибка на сроке в примере:
 QSqlDatabase m_db  = QSqlDatabase::addDatabase("QSQLITE","MDRestr");
 ошибка сегментации памяти. Не подскажете в чем дело?


Название: Re: создание БД в приложении под Symbian
Отправлено: serg_hd от Март 24, 2011, 00:28
вылетает ошибка на сроке в примере:
 QSqlDatabase m_db  = QSqlDatabase::addDatabase("QSQLITE","MDRestr");
 ошибка сегментации памяти. Не подскажете в чем дело?
Строка правильная. Может хидера нет? Хотя в этом случае было бы что-то типа "has initializer but incomplete type"...