c++ 写MySql工具类
本文主要总结和记录又本人设计的一个mysql连接工具类SqlPackage。
本工具类提供了常用的sql命令的执行接口,利用本工具类提供的方法能够非常地方便地
在c++代码中实现绝大部分的常用数据库操作。
以下链接是一个使用本工具实现的 学生成绩管理系统案例:
BlackCarDriver/student-manage-system
若初次在c++中使用mysql数据库连接可以参考我的上一篇博客:
c++连接mysql入门
sqlPackage.h
#include<iostream>
#include<string>
#include<vector>
using namespace std;
typedef vector<string> res_row;
class SqlPackage {
private:
static MYSQL conn;
static bool isInit;
MYSQL_RES *res_set;
MYSQL_ROW row;
MYSQL_FIELD *field;
int init();
string query(string ope, int interval);
string getTableHead(MYSQL_RES* res, int interval);
public:
SqlPackage();
~SqlPackage();
void testQuery();
void testExec();
void testOther();
res_row queryRow(string ope);
int exec(string ope);
string makeSql(string format, vector<string> strVec);
int insert(string insertSql);
int login(string id, string password);
void printTable(string ope, int interval=20);
};
sqlPackage.cpp
#pragma once
#include<iostream>
#include<stdio.h>
#include<string>
#include<string.h>
#include<winsock.h>
#include<mysql.h>
#include<vector>
#include"SqlPackage.h"
using namespace std;
#define SCUUEED 1
#define FATAL -1
#define WORNG -2
#define TEACHER 3
#define STUDENT 9
#define MANAGER 27
//config of database connection
const char* host = "localhost";
const char* user = "root";
const char* password = "123456"