You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

41 lines
1.1 KiB

#ifndef XSQLEXCUTE_H
#define XSQLEXCUTE_H
#include <QObject>
#include <QMutex>
#include <QSqlDatabase>
#include <QSqlQuery>
#include <QSqlRecord>
class XSqlExcute : public QObject
{
Q_OBJECT
public:
explicit XSqlExcute(QObject *parent = nullptr);
static XSqlExcute* instance();
bool openMysql(const QString& hostName,const QString& databaseName,const QString& userName,const QString& password,const QString& connectionName);
bool closeMysql(const QString& connectionName);
//执行语句
bool excuteSQL(const QString& sql,const QString& connectionName);
//查询
QSqlQuery query(const QString& sql,const QString& connectionName);
QSqlRecord record(const QString& sql,const QString& connectionName);
//事务
void transaction(const QString& connectionName);
void commit(const QString& connectionName);
void rollback(const QString& connectionName);
signals:
private:
// explicit XSqlExcute(QObject *parent = nullptr);
private:
static XSqlExcute* g_pSqlExc;
static QMutex m_mutex;
QSqlDatabase db;
};
#endif // XSQLEXCUTE_H