Files
cinema-ticket-management-sy…/core/db/database_manager.h
T
2026-07-12 14:34:52 +04:00

32 lines
795 B
C++

#ifndef DATABASE_MANAGER_H
#define DATABASE_MANAGER_H
#include <QMutex>
#include <QSqlDatabase>
#include <QString>
class DatabaseManager {
public:
enum class CreateDatabaseResult { Success, AlreadyExists, Error };
private:
~DatabaseManager();
DatabaseManager(const DatabaseManager &) = delete;
DatabaseManager &operator=(const DatabaseManager &) = delete;
public:
static CreateDatabaseResult
createDefaultDatabaseIfMissing(const QString &databaseFileName);
static bool connectToDefaultDatabase(const QString &databaseFileName);
static void disconnectDefaultDatabase();
private:
static bool databaseFileExists(const QString &databaseName, QSqlDatabase &db);
static bool executeSqlFiles(const QStringList &filePaths, QSqlDatabase &db);
};
#endif // DATABASE_MANAGER_H