12 #include <QSqlDatabase>
15 #include <QStringList>
17 #include <QVariantMap>
45 const QString& dbname) :
101 QString* err =
nullptr);
112 static bool setDbSetting(
const QString& host,
int port,
const QString& username,
const QString& password,
113 const QString& dbname);
266 bool exec(
const QString& sqlcommand);
274 bool insert(
const QString&
table,
const QVariantMap& data);
282 bool update(
const QString&
table,
const QVariantMap& data);
327 return isSupportTransaction_;
348 static QStringList Created_;
349 static QStringList Update_;
350 static QStringList SoftDelete_;
351 bool isSupportTransaction_ =
false;
360 QList<DatabaseManager*> Childs_;
363 QVariant InsertedId_;
364 QSqlError LastError_;
370 static QSqlDatabase getDatabase();
383 bool init(
const QString& host,
int port,
const QString& username,
const QString& password,
const QString& dbname,
384 bool checkDBName =
false,
bool newConnection =
false);
390 void postQuery(QSqlQuery* query);
397 QString dataToString(
const QVariantMap& map);
Manages database connections and SQL operations.
Definition: db.h:80
bool isSupportTransaction()
Checks if transactions are supported.
Definition: db.h:325
bool update(const QString &table, const QVariantMap &data)
Updates data in a specified table.
Definition: db.cpp:361
static bool checkConnection(QString &error)
Checks the database connection.
Definition: db.cpp:81
DatabaseManager * table(const QString &value)
Sets the table for the query.
Definition: db.cpp:115
QSqlError lastError()
Gets the last error occurred.
Definition: db.cpp:251
DatabaseManager * whereOr(const QString &value)
Adds an OR condition to the WHERE clause.
Definition: db.cpp:180
int count()
Gets the count of records matching the query criteria.
Definition: db.cpp:425
bool commit()
Commits a transaction.
Definition: db.cpp:453
bool truncateTable(const QString &table)
Truncates a specified table.
Definition: db.cpp:463
DatabaseManager * limit(int limit)
Adds a LIMIT clause to the query.
Definition: db.cpp:196
DatabaseManager * reset()
Resets the query settings.
Definition: db.cpp:94
DatabaseManager * clearSelect()
Clears the SELECT clause.
Definition: db.h:334
DatabaseManager * where(const QString &value, const QVariant &val=QVariant())
Adds a WHERE clause to the query.
Definition: db.cpp:121
bool del(const QString &table)
Deletes data from a specified table.
Definition: db.cpp:398
QString lastQuery()
Gets the last executed query.
Definition: db.cpp:261
DatabaseManager * sort(const QString &sort)
Adds an ORDER BY clause to the query.
Definition: db.cpp:208
DbResult exec()
Executes the built query.
Definition: db.cpp:266
DatabaseManager * like(const QString &value, const QString &val)
Adds a LIKE clause to the query.
Definition: db.cpp:138
static bool setDbSetting(const QString &host, int port, const QString &username, const QString &password, const QString &dbname)
Sets the database settings.
Definition: db.cpp:63
DatabaseManager * select(const QString &value)
Selects columns for the query.
Definition: db.cpp:107
DatabaseManager * likeNative(const QString &value, const QString &val)
Adds a native LIKE clause to the query.
Definition: db.cpp:169
QString getSelectQuery(const QString &select=QString())
Gets the SQL SELECT query.
Definition: db.cpp:222
DatabaseManager * group(const QString &group)
Adds a GROUP BY clause to the query.
Definition: db.cpp:216
DbResult execResult(const QString &sql)
Executes a SQL query.
Definition: db.cpp:286
DbResult get(const QString &tableName)
Executes a SELECT query on a specified table.
Definition: db.cpp:306
bool rollback()
Rolls back a transaction.
Definition: db.cpp:458
DatabaseManager * start(int start)
Adds an OFFSET clause to the query.
Definition: db.cpp:202
static DatabaseManager * createInstance(bool checkDBName=false, bool newConnection=false, QString *err=nullptr)
Creates an instance of DatabaseManager.
Definition: db.cpp:38
QVariant lastInsertedId()
Gets the ID of the last inserted record.
Definition: db.cpp:256
DatabaseManager * likePost(const QString &value, const QString &val)
Adds a LIKE clause with a postfix wildcard to the query.
Definition: db.cpp:158
bool beginTransaction()
Begins a transaction.
Definition: db.cpp:448
~DatabaseManager()
Destructor for DatabaseManager.
Definition: db.cpp:29
DatabaseManager * clone()
Clones the current DatabaseManager instance.
Definition: db.cpp:439
bool insert(const QString &table, const QVariantMap &data)
Inserts data into a specified table.
Definition: db.cpp:327
DatabaseManager * join(const QString &value)
Adds a JOIN clause to the query.
Definition: db.cpp:188
The DbResult class represents a result set returned from a database query.
Definition: dbresult.h:24
This file contains the declaration of the DbResult class, which represents a result set returned from...
Configuration settings for database connections.
Definition: db.h:28
DatabaseConfig()
Default constructor for DatabaseConfig.
Definition: db.h:32
void set(const QString &host, int port, const QString &username, const QString &password, const QString &dbname)
Sets the database configuration parameters.
Definition: db.h:58
DatabaseConfig(const QString &host, int port, const QString &username, const QString &password, const QString &dbname)
Parameterized constructor for DatabaseConfig.
Definition: db.h:44
QString username
Database username.
Definition: db.h:69
QString host
Database host.
Definition: db.h:68
QString password
Database password.
Definition: db.h:70
QString dbName
Database name.
Definition: db.h:71
int port
Database port.
Definition: db.h:67