#ifndef MBWATCHDB_H
|
#define MBWATCHDB_H
|
#include <QObject>
|
#include <QSqlDatabase>
|
#include <QMutex>
|
|
/***********************************************************
|
*
|
* mb_watch_xxxxxxxxxx_xxx.db
|
*
|
************************************************************/
|
class CMBWatchDb
|
{
|
public:
|
CMBWatchDb();
|
~CMBWatchDb();
|
private:
|
QMutex m_mutex;
|
private:
|
QString m_path;
|
QString m_logTableName;
|
QString m_backupDirTableName;
|
private:
|
QSqlDatabase openDataBase();
|
void closeDataBase(QString connectionName);
|
private:
|
bool execSql( QString sql,QString &errInfo ); // 执行sql
|
bool execSql(QSqlDatabase &db,QString sql,QString &errInfo ); // 执行sql
|
bool getFiledValueSql( QString sql,QString &tmpValue,QString tmpFiled,QString &errInfo ); // 获取tmp字段的值
|
bool exsitSql( QString sql,bool &bExsit,QString &errInfo );
|
bool isTableExist(QString table);
|
private:
|
bool createLogTable(QString &errInfo);
|
bool createBackupTable(QString &errInfo);
|
public:
|
bool init(QString path,QString &errInfo);
|
private:
|
bool loadDB(QSqlQuery &query);
|
public:
|
bool queryDB(QString &errInfo);
|
private: // log db
|
bool exsitLogDB(QString fileName,bool &bExsit,QString &errInfo);
|
bool updateLogDB(QString fileName,QString lastMdfTime,QString &errInfo); // 更新DB
|
bool insertLogDB(QString fileName,QString lastMdfTime,QString &errInfo); // 插入DB
|
bool getLastMdfTimeLogDB(QString fileName,QString &lastMdfTime,QString &errInfo);
|
public:
|
bool setLogDB(QString &cmd,bool &bOpDB,QString fileName,QString lastMdfTime, QString &errInfo);
|
bool setLogDB(bool &bOpDB,QString fileName,QString lastMdfTime, QString &errInfo);
|
private: // backup db
|
bool insertBackupDirDB(QString opType,QString fileName,
|
QString newFileName,QString svrPath,
|
QString svrFlag,QString &errInfo);
|
bool exsitFileNameBackupDirDB(QString fileName,bool &bExsit,QString &errInfo);
|
private:
|
bool delBackupDirDB(QString fileName,QString &errInfo);
|
bool renameBakcupDirDB(QString opType,QString fileName,
|
QString newFileName,QString svrPath,
|
QString svrFlag,QString &errInfo);
|
bool newBakcupDirDB(QString opType,QString fileName,
|
QString newFileName,QString svrPath,
|
QString svrFlag,QString &errInfo);
|
bool mdyBakcupDirDB(QString opType,QString fileName,
|
QString newFileName,QString svrPath,
|
QString svrFlag,QString &errInfo);
|
public:
|
bool setBackupDirDB(QString opType,QString fileName,
|
QString newFileName,QString svrPath,
|
QString lastMdfTime,QString svrFlag,QString &errInfo);
|
public: // 调整数据库
|
bool adjDB(QString opType,QString fileName,
|
QString newFileName,QString svrPath,
|
QString lastMdfTime,QString svrFlag,QString &errInfo);
|
bool adjDB(QString fileName,
|
QString newFileName,QString svrPath,
|
QString lastMdfTime,QString svrFlag,QString &errInfo);
|
};
|
|
#endif // MBWATCHDB_H
|