8 #ifndef SQLDATABASESTORAGE_H 9 #define SQLDATABASESTORAGE_H 14 #include <QSqlDatabase> 15 #include <QThreadStorage> 16 #include "cppwebframework_global.h" 27 QSqlDatabase *db =
nullptr;
30 Database(Database &other)
39 const QString conName(db->connectionName());
42 QSqlDatabase::removeDatabase(conName);
52 QThreadStorage<Database> pool;
64 const QString &databaseName =
"",
const QString &userName =
"",
65 const QString &password =
"",
int port = 0) : type(type), hostName(hostName),
66 databaseName(databaseName), userName(userName),
67 password(password), port(port)
74 inline QString
getType()
const {
return type; }
99 inline int getPort()
const {
return port; }
106 if(!pool.hasLocalData())
109 database.db =
new QSqlDatabase(QSqlDatabase::addDatabase(type, QUuid::createUuid().toString()));
110 database.db->setHostName(hostName);
111 database.db->setDatabaseName(databaseName);
112 database.db->setPort(port);
113 database.db->setUserName(userName);
114 database.db->setPassword(password);
115 if(!database.db->open())
116 qDebug() << database.db->lastError().text();
117 pool.setLocalData(database);
119 return *pool.localData().db;
125 #endif // SQLDATABASESTORAGE_H QString getHostName() const
Returns the host name.
Definition: sqldatabasestorage.h:84
QSqlDatabase & getDatabase()
Returns the existing connection to the current thread's database. If there is no open connection to t...
Definition: sqldatabasestorage.h:104
QString getDatabaseName() const
Returns the database's name.
Definition: sqldatabasestorage.h:89
QString getUserName() const
Returns the user's name.
Definition: sqldatabasestorage.h:94
int getPort() const
Returns the port.
Definition: sqldatabasestorage.h:99
The SqlDatabaseStorage class allows you to reuse connections made to the database through the QSqlDat...
Definition: sqldatabasestorage.h:22
SqlDatabaseStorage(const QString &type="", const QString &hostName="", const QString &databaseName="", const QString &userName="", const QString &password="", int port=0)
This constructor receives informations to create a connection to the database.
Definition: sqldatabasestorage.h:63
QString getType() const
Returns the type.
Definition: sqldatabasestorage.h:74
QString getPassword() const
Returns the password.
Definition: sqldatabasestorage.h:79