Files
clients/FilterProcess/sdbmanager.h
2017-08-08 12:20:01 +09:00

38 lines
1.3 KiB
C++

#ifndef SDBMANAGER
#define SDBMANAGER
#include <QMap>
class QSqlDatabase;
class QSqlQuery;
class QString;
class QStringList;
class QSqlError;
class SDBManager
{
public:
enum E_DATABASE{ E_DATABASE_DATA, E_DATABASE_WEB };
virtual ~SDBManager();
QSqlDatabase getDBConnection(const QString& _dbName) const;
QSqlDatabase getDBConnection(const E_DATABASE& _eDatabase) const;
bool open(const QString& _dbName);
bool open(const E_DATABASE& _eDatabase);
void close(const QString& _dbName);
void close(const E_DATABASE& _eDatabase);
void close();
void addDatabase(const QString& _dbName, const QString& _host, const QString& _id, const QString& _pw, const QString& _db, const int& _port = 3306);
void addDatabase(const QString& _dbName, const E_DATABASE& _eDatabase, const QString& _host, const QString& _id, const QString& _pw, const QString& _db, const int& _port = 3306);
QSqlQuery sqlQuery(const QString& _dbName);
QSqlQuery sqlQuery(const E_DATABASE& _eDatabase);
bool reOpen(const QString& _dbName);
bool reOpen(const E_DATABASE& _eDatabase);
bool isConnectionError(const QSqlError& _error);
QSqlDatabase operator[](const QString& _dbName) const;
QSqlDatabase operator[](const E_DATABASE& _eDatabase) const;
private:
QMap<E_DATABASE, QString> m_mapDBname;
};
#endif // SDBMANAGER