Use only single database

This commit is contained in:
2025-03-18 14:46:08 +01:00
parent f30dd2a520
commit 6fd17fbdf5
7 changed files with 38 additions and 22 deletions
+12 -5
View File
@@ -15,7 +15,7 @@ bool Database::init(const QLatin1String &connectionName)
QString path = QStandardPaths::writableLocation(QStandardPaths::AppDataLocation);
QDir dir(path);
QSqlDatabase database = QSqlDatabase::addDatabase("QSQLITE", connectionName);
database = QSqlDatabase::addDatabase("QSQLITE", connectionName);
if(!dir.mkpath("."))
return false;
@@ -27,7 +27,7 @@ bool Database::init(const QLatin1String &connectionName)
{
QSqlQuery query(database);
query.exec("PRAGMA foreign_keys = ON");
int version = checkVersion();
int version = checkVersion(database);
if(version == 0)
{
query.exec("PRAGMA user_version = 1");
@@ -76,6 +76,14 @@ bool Database::init(const QLatin1String &connectionName)
}
qDebug() << error.text();
}
else
{
qDebug() << "Failed to open database" << connectionName;
}
}
else
{
qDebug() << "Database is invalid";
}
return false;
}
@@ -146,10 +154,9 @@ bool Database::checkError(QSqlQuery &query)
}
}
int Database::checkVersion()
int Database::checkVersion(QSqlDatabase &db)
{
QSqlDatabase db = QSqlDatabase::database();
QSqlQuery query("PRAGMA user_version");
QSqlQuery query("PRAGMA user_version", db);
if(query.next())
return query.value(0).toInt();
return -1;