1
我想用我現有的Sqlite數據包打包我的Qt應用程序。我有標準的Qt數據庫代碼:如何使用現有的Sqlite數據庫部署Qt應用程序?
m_db = QSqlDatabase::addDatabase("QSQLITE");
m_db.setDatabaseName("database.sqlite");
bool connected = m_db.open();
if (!connected) {
qDebug() << "Error: connection with database failed";
} else {
qDebug() << "Database: connection success";
QSqlQuery q(m_db);
q.prepare("SELECT * FROM people");
if (q.exec()) {
qDebug() << "Yay!";
} else {
qWarning() << "Bad exec: " << q.lastError();
qWarning() << q.executedQuery();
}
}
然而,結果是:
Error: connection with database failed
我知道這是因爲它沒有找到正確的數據庫,並而不是創建一個新的。如果我在我的開發機器上提供絕對路徑到m_db.setDatabaseName()
,它就可以工作。但我的數據庫文件在我的.qrc中,並且在部署時不會在該位置可用...因此,如何才能爲此數據庫獲得可靠的路徑?
這是你在找什麼?:爲https://stackoverflow.com/questions/4254250/embedded-database-in-qt – Nazar554