#ifndef XSQLEXCUTE_H #define XSQLEXCUTE_H #include #include #include #include #include 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