我写的mysql for c库(MYSQL数据库)的辅助使用工具
[編輯] [转简体] (简体译文)
|
作者:huidong
| 分類:【編程】C/C++
[
12 瀏覽
0 評論
6 贊
4 踩
]
概要
可以更方便的使用mysql for c库:mysql_tools
正文
可以更方便的使用mysql for c库
或者百度网盘:
链接: https://pan.baidu.com/s/1dPtlh5W3mMFcisC4SOa3hQ 提取码: gcu2
库的安装:http://www.huidong.xyz/index.php?mode=2&id=184
源码:
mysql_tools.h
//////////////////////////////////////////////////// // // mysql_tools.h // // mysql库的辅助使用库 // // 版本:Ver1.0 // // 制作:huidong <mailkey@yeah.net> // // 创建时间: 2020.11.21 // 最后修改: 2020.11.22 // // #pragma once #include <iostream> using namespace std; #include <mysql.h> #pragma comment(lib,"libmysql.lib") // 连接数据库,返回是否连接成功 bool init_connect( const char* host, // 主机ip const char* user, // 数据库用户名 const char* passwd, // 数据库密码 const char* db, // 数据库名称 int port = 3306 // 端口,通常为3306 ); // 关闭数据库的连接 void close_connect(); // 执行sql语句,返回执行是否成功 bool do_sql(const char* command); // 得到得到执行sql查询语句后返回的内容条数 my_ulonglong get_sql_result_num(); // 得到执行sql查询语句后返回的内容,num是指第几条内容(从0数) MYSQL_ROW get_sql_result(my_ulonglong num); // 得到当前的res MYSQL_RES* get_sql_res(); // 设置当前的res void set_sql_res(MYSQL_RES* res);
mysql_tools.cpp
//////////////////////////////////////////////////// // // mysql_tools.cpp // // mysql库的辅助使用库 // // 版本:Ver1.0 // // 制作:huidong <mailkey@yeah.net> // // 创建时间: 2020.11.21 // 最后修改: 2020.11.22 // // #include "mysql_tools.h" MYSQL* mysql = NULL; MYSQL_RES* last_res = NULL; // 执行sql语句,返回执行是否成功 bool do_sql(const char* command) { // 有值返回说明执行失败 if (mysql_real_query(mysql, command, strlen(command))) { cout << "Select error: " << mysql_errno(mysql) << ", " << mysql_error(mysql) << endl; return false; } last_res = mysql_store_result(mysql); return true; } // 得到得到执行sql查询语句后返回的内容条数 my_ulonglong get_sql_result_num() { return mysql_num_rows(last_res); } // 得到执行sql查询语句后返回的内容,num是指第几条内容(从0数) MYSQL_ROW get_sql_result(my_ulonglong num) { mysql_data_seek(last_res, num); // 移动到指定行 return mysql_fetch_row(last_res); } // 得到当前的res MYSQL_RES* get_sql_res() { return last_res; } // 设置当前的res void set_sql_res(MYSQL_RES* res) { last_res = res; } // 连接数据库,返回是否连接成功 bool init_connect( const char* host, // 主机ip const char* user, // 数据库用户名 const char* passwd, // 数据库密码 const char* db, // 数据库名称 int port // 端口,通常为3306 ) { // 初始化MySQL连接句柄 mysql = mysql_init((MYSQL*)0); // 连接数据库 mysql_real_connect(mysql, host, user, passwd, db, port, NULL, 0); // 连接失败 if (!mysql) { cout << "Connection error: " << mysql_errno(mysql) << ", " << mysql_error(mysql) << endl; return false; } // 改变编码格式 mysql_set_character_set(mysql, "GB2312"); return true; } // 关闭数据库的连接 void close_connect() { mysql_close(mysql); // 关闭连接 }