PowerModeler/include/sqlQueryExecutor.h

40 lines
1.3 KiB
C++
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#ifndef SQLQUERYEXECUTOR_H
#define SQLQUERYEXECUTOR_H
#include <QObject>
#include <QSqlQuery>
#include <QMap>
#include "global.h"
class SqlQueryExecutor : public QObject
{
Q_OBJECT
public:
static SqlQueryExecutor& instance();
//基础SQL语句执行接口
QSqlQuery executeSQL(const QString& strConnectionName, const QString& strSQL, const QVariantHash& params = {}, bool useTranscation = false);
//基于具体业务的查询接口-对外调用
const QVector<Model> getModels(const QString&);
const QVector<AttributeGroup> getAttributeGroup(const QString&);
const QString getArributeGropuName(const QString&, int);
bool addModel(const QString&, Model&);
bool modelNameExistsInDB(const QString&, const QString&);
bool modelTypeExistsInDB(const QString&, const QString&);
bool removeMode(const QString&, int);
signals:
void errorOccurred(const QString& error);
private:
explicit SqlQueryExecutor();
~SqlQueryExecutor();
// 禁止拷贝
SqlQueryExecutor(const SqlQueryExecutor&) = delete; //delete关键字表示该函数不可用包括编译器自动生成的函数
SqlQueryExecutor& operator=(const SqlQueryExecutor&) = delete;
//基于具体业务的查询接口-内部调用
QVector<int> getModelGroups(const QString&, int);
};
#endif //SQLQUERYEXECUTOR_H