C/C++的MySQL API
一个简单易用的C++连接并使用MySQL的例子, 需要带上lib里的那个libMySQL.dll, 如果你要纯静态的话, 请使用 vs12/14里的那个lib, 然后注释掉 #pragma comment(lib, "lib/mysql.lib"), 不过只有release的版本就对了, 可以去官网下载debug版本.
一个简单易用的C++连接并使用MySQL的例子, 需要带上lib里的那个libMySQL.dll, 如果你要纯静态的话, 请使用 vs12/14里的那个lib, 然后注释掉 #pragma comment(lib, "lib/mysql.lib"), 不过只有release的版本就对了, 可以去官网下载debug版本.
非常适合新手阅读, 代码量极少, 实现了日志最基本的需求, 有等级控制, 文件控制, 性能足够一般小型项目调试使用, 线程安全, 全局单例, 并有定义了几个宏, 可直接用宏, 使用方式类似于 printf, 支持不定参数
1. 很适合新手学习线程池 2. 没有加锁, 大家要用的话自己加锁 3. 真的超简单, 代码量超少 4. 线程类是接口, 要自己继承才能使用, 里面有例子 5. 如果想加入 "插队" 线程机制, 可以把 STL的quene 换成 list, map等.
SQLite3 的简单封装,实现了最基本的增删查改, 里面有简单的数据库文件 data.s3db可供测试, /* // func name: open // param----begin----param // file : 文件名,包括路径 // param-----end-----param // return 0 成功,-1 失败 */ int open(char* file); /* // func name: get_res // param----begin----param // sql:Sql语句; // vec:用来存储返回集的二维向量 // param-----end-----param // return: 0 查无返回集, // return: >0 返回集的行数, // return: -1001 查无此表 // return: -1002 暂定为Sql语法错误 */ int get_res(char *sql,vector<vector<string>>& vec ); /* // func name: update // param----begin----param // sql : sql语句 // param-----end-----param // return : 0为成功,-1为失败 */ int update(char* sql); /* // func name: insert // param----begin----param // sql : sql语句 // param-----end-----param // return : -1 为插入失败(一般为语法错误/表错误/约束条件错误,暂不区分,统一认为错误) // return : >0为插入后返回的id */ int insert(char *sql); /* // func name: del // param----begin----param // sql : sql语句 // param-----end-----param // return : 0 删除成功 // return : -1 删除失败 */ int del(char* sql);
/* 1.该系统采用面向对象的设计方法 2.声明一个学生信息类studentmessage 3.学生信息应包含学号,姓名,性别,年龄,民族,家庭住址,联系方法,专业,成绩 4.对学生信息的操作包含录入学生的entermessage.输出学生信息showmsage输出不及格课程门数unpassedcount等 5.该系统要求能够输入学生信息enter.显示所有学生的信息show.查找指定学生信息(按学号,姓名),求某门课程的总成绩sum.求某门课程的来去成绩average.求某门课程的及格率passedcount.求某门课程的不及格率unpassedcount.求某门课程的优秀比例goodpercent 6.在主函数中调用上述功能,实现系统。 */