1 Star 0 Fork 0

glm-001/shenntoufromgithub

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
dbmanager.h 2.63 KB
一键复制 编辑 原始数据 按行查看 历史
glm-001 提交于 2024-09-13 10:35 +08:00 . resetcodes
#ifndef DBMANAGER_H
#define DBMANAGER_H
#include <QDataStream>
#include <QTextStream>
#include "singleton.h"
//#include "DBMySql.h"
#include "qjsonobject.h"
#include "qsqlquery.h"
#include "qsqldatabase.h"
#define DATA_BASE_ERR1 "Database Error"
#define LOG_ERR_MSG_DB_OPEN_FAILED "open db failed!"
// 数据库总表数
#define DB_TABLE_TOTAL 18
// 表字段数
#define WATER_COEFFICIENT 5
#define EXPERMENT_RECORD 21
#define PRESSURE_VAL1 4
#define PRESSURE_VAL2 4
#define PRESSURE_VAL3 4
#define PRESSURE_VAL4 4
#define PRESSURE_VAL5 4
#define PRESSURE_VAL6 4
#define PRESSURE_VAL7 4
#define PRESSURE_VAL8 4
#define PRESSURE_VAL9 4
#define PRESSURE_VAL10 4
#define PRESSURE_VAL11 4
#define PRESSURE_VAL12 4
#define PRESSURE_VAL13 4
#define PRESSURE_VAL14 4
#define PRESSURE_VAL15 4
#define PRESSURE_VAL16 4
// 数据库表
enum DATABASE
{
water_coefficient=0, //电子记录表
experment_record , //耗材数量表
pressure_val1 ,
pressure_val2 ,
pressure_val3 ,
pressure_val4 ,
pressure_val5 ,
pressure_val6 ,
pressure_val7 ,
pressure_val8 ,
pressure_val9 ,
pressure_val10 ,
pressure_val11 ,
pressure_val12 ,
pressure_val13 ,
pressure_val14 ,
pressure_val15 ,
pressure_val16
};
class DBManagerImpl
{
public:
DBManagerImpl();
~DBManagerImpl();
bool init();
private:
bool open();
void close();
bool isOpen();
//QSqlDatabase mDb;
private:
void init_db_tablename();
void init_db_column();
// 初始化数据库字段数
void init_db_colum_num();
//
void load_config();
private:
QMap<QString,QString> db_column;
QMap<DATABASE, QString> db_tablename;
//QList<QString> table_name;
QJsonObject db_config;
public:
// std::shared_ptr< DBMySql > mydb;
QSqlDatabase mDb;
QList< int > table_colum_num;
public:
// 获取表名
QString get_db_tablename( DATABASE tableNo );
// 获取字段名
QString get_db_column( QString tablename, int coulmn );
// 获取字段名 返回表中所有字段
QList<QString> get_db_column( QString tablename );
void select_datas( QString tablename, QString command, QList<QStringList> &result, QString sqlWhere = "" );
void insert_datas( QString tablename, QString command, QHash<QString, QString> data, QString sqlWhere = "" );
void keep_live(void);
};
typedef singleton< DBManagerImpl > DBManager;
#endif // DBMANAGER_H
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C++
1
https://gitee.com/glm-001/permeatefromgithub.git
git@gitee.com:glm-001/permeatefromgithub.git
glm-001
permeatefromgithub
shenntoufromgithub
main

搜索帮助