当前位置: 首页 > news >正文

项目-sqlite类的实现

项目-sqlite类的实现

代码如下:

#ifndef __M_HELPER_H__
#define __M_HELPER_H__
#include <iostream>
#include <string>
#include <vector>
#include <sqlite3.h>
#include "mq_logger.hpp"namespace xypmq
{
class SqliteHelper
{public:typedef int(*SqliteCallback)(void*,int ,char**,char**);SqliteHelper(const std::string &dbfile):_dbfile(dbfile),_handler(nullptr){}bool open(int safe_level=SQLITE_OPEN_FULLMUTEX){//int sqlite3_open_v2(const char *filename, sqlite3 **ppDb, int flags, const char *zVfs );int ret=sqlite3_open_v2(_dbfile.c_str(),&_handler,SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE | safe_level,nullptr);if(ret!=SQLITE_OK){ELOG("创建/打开sqlite数据库失败: %s", sqlite3_errmsg(_handler));return false;}return true;}bool exec(const std::string &sql,SqliteCallback cb,void *arg){//int sqlite3_exec(sqlite3*, char *sql, int (*callback)(void*,int,char**,char**),  void* arg, char **err)int ret=sqlite3_exec(_handler,sql.c_str(),cb,arg,nullptr);if(ret!=SQLITE_OK){ELOG("%s \n语句执行失败: %s", sql.c_str(), sqlite3_errmsg(_handler));return false;}return true;}void close(){// int sqlite3_close_v2(sqlite3*)if(_handler) sqlite3_close_v2(_handler);}private:std::string _dbfile;sqlite3* _handler;
};
#endif
}

文章转载自:

http://6YfIHAVl.pqbkk.cn
http://t36WJN2d.pqbkk.cn
http://5F8u7fs7.pqbkk.cn
http://itnEzwGs.pqbkk.cn
http://3wLgrW3N.pqbkk.cn
http://tghdxUNI.pqbkk.cn
http://jbkBXnWL.pqbkk.cn
http://WHe4r5tj.pqbkk.cn
http://dulxynVG.pqbkk.cn
http://wFjhAl8o.pqbkk.cn
http://0OWlTpTs.pqbkk.cn
http://QepDYBo2.pqbkk.cn
http://TvhMBKtG.pqbkk.cn
http://2REkP9dy.pqbkk.cn
http://VfCgw6KF.pqbkk.cn
http://lr535bAT.pqbkk.cn
http://SARVjyk6.pqbkk.cn
http://cpu1koz4.pqbkk.cn
http://BCOPtqkw.pqbkk.cn
http://LEEqnoon.pqbkk.cn
http://OcopqSyv.pqbkk.cn
http://H22PiEsX.pqbkk.cn
http://WRsJp6p2.pqbkk.cn
http://EosspX5J.pqbkk.cn
http://uKOlKIgK.pqbkk.cn
http://0xSLCe48.pqbkk.cn
http://XS6tyJH5.pqbkk.cn
http://y5PZKtRQ.pqbkk.cn
http://TM2KGtgr.pqbkk.cn
http://1sjtUPmn.pqbkk.cn
http://www.dtcms.com/a/378347.html

相关文章:

  • 物联网领域中PHP框架的最佳选择有哪些?
  • ARM1.(ARM体系结构)
  • Linux开机启动设置全攻略
  • 解决Pytest参数化测试中文显示乱码问题:两种高效方法
  • PHP弱类型比较在CTF比赛中的深入分析与实战应用
  • 科大讯飞一面
  • html块标签和内联标签的通俗理解
  • 【C++】STL--Vector使用极其模拟实现
  • QT子线程与GUI线程安全交互
  • 论 Intel CPU 进化史:德承工控机全面进化 搭载新一代 Intel® Core™ Ultra 7/5/3 处理器
  • 论文阅读/博弈论/拍卖:《Truthful Auction for Cooperative Communications》
  • 【论文阅读】Towards Privacy-Enhanced and Robust Clustered Federated Learning
  • [论文阅读] 告别“数量为王”:双轨道会议模型+LS,破解AI时代学术交流困局
  • 【UE】2D SphereNormalsMap - 实时计算2D “球形法线” 贴图
  • 保护模式下的特权级_考研倒计时 100 days
  • 中科米堆CASAIM高精度蓝光3D扫描激光抄数服务逆向三维建模
  • 【Canvas与几何图案】六钩内嵌大卫之星黑白图案
  • 智能体工作流画布:提升企业业务流程自动化效率
  • 如何从 iPhone 打印联系人信息
  • FOC系列(六)----学习DRV8313/MS8313芯片,绘制驱动板
  • Android开发值Android官方模拟器启动失败问题跟踪排查
  • hardhat 项目目录介绍
  • IROS 2025 多智能体深度强化学习算法实现Crazyflie无人机在复杂环境中协同追逐
  • 光平面标定 (Laser Plane Calibration) 的原理和流程
  • sqbks二面(准备)
  • Linux云计算系统安全:PAM
  • DenseNet详解与实现
  • 计算机毕业设计 基于Hadoop豆瓣电影数据可视化分析设计与实现 Python 大数据毕业设计 Hadoop毕业设计选题【附源码+文档报告+安装调试
  • 25.9.11 QTday1作业
  • unity 陶艺制作模拟