mirror of
https://gitlab.com/spaceti-app/integrations/common/server-sdk.git
synced 2026-07-12 12:50:50 +02:00
43 lines
980 B
C++
43 lines
980 B
C++
#pragma once
|
|
|
|
#include "databasetable.h"
|
|
|
|
#include <QObject>
|
|
#include <QSqlQuery>
|
|
|
|
class DatabaseUtilsTest;
|
|
|
|
namespace serversdk {
|
|
|
|
|
|
class DatabaseManager;
|
|
|
|
class DatabaseUtils : public QObject
|
|
{
|
|
Q_OBJECT
|
|
friend class ::DatabaseUtilsTest;
|
|
public:
|
|
explicit DatabaseUtils(DatabaseManager *manager = nullptr, const QString type = "SQLITE");
|
|
|
|
QSqlQuery createTable(const DatabaseTable *table, const QString table_name) const;
|
|
|
|
QSqlQuery insertIntoTable(const DatabaseTable *table, const QString table_name) const;
|
|
|
|
QSqlQuery updateTable(const DatabaseTable *table, const QString table_name) const;
|
|
|
|
QList<QMap<QString, QVariant>> listMapFromQuery(QSqlQuery query) const;
|
|
|
|
QString sqlType() const;
|
|
void setSqlType(const QString &sqlType);
|
|
|
|
private:
|
|
QString createTableText(const DatabaseTable *table, const QString table_name) const;
|
|
|
|
private:
|
|
DatabaseManager *mDatabaseManager = nullptr;
|
|
QString mSqlType;
|
|
};
|
|
|
|
} // namespace serversdk
|
|
|