C++/mySql
文章平均质量分 52
使用C++操作mysql数据库,包括连接方法,增删改查,二进制数据,存储过程,函数调用,批量插入,数据库连接池等
优惠券已抵扣
余额抵扣
还需支付
¥9.90
¥99.00
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
小米的修行之路
是日已过,命亦随减;如少水鱼,斯有何乐?当勤精进,如救头燃!但念无常,慎勿放逸。
展开
-
C++ 实现mysql数据库连接池
1、连接池类实现:#pragma once#include "mysqlConn.h"#include <mutex>#include <deque>using namespace std;class connPool{public: static connPool* getConnPool(); connPool(const connPool& obj) = delete; connPool& operator=(const connPo原创 2022-04-26 00:34:48 · 2148 阅读 · 0 评论 -
mysql:Unknown MySQL server host ‘127.0.0.1‘ (10093)
1、在多线程下,使用mysql_real_connect频繁连接mysql数据库时会出现错误:Unknown MySQL server host '127.0.0.1' (10093),错误编码是:2005.随即查看了一下10093的错误原因:提示我是忘记调用了WSAStartup函数,因为连接mysql本质属于tcp连接。所以在程序开始位置加上此函数的调用,问题解决:#include "Windows.h"#pragma comment(lib, "ws2_32.lib")...原创 2022-04-26 00:09:24 · 2441 阅读 · 0 评论 -
C++封装mysql数据库操作类及其使用
1、封装类:#pragma once#include <mysql.h>#include <iostream>using namespace std;class mysqlConn{public: mysqlConn(); ~mysqlConn(); //连接 bool connect(string user, string passWord, string dbName, string ip, unsigned short port = 3306, u原创 2022-04-23 22:17:22 · 2747 阅读 · 0 评论 -
C++调用mysql自定义函数
1、测试用表:2、使用可视化工具Navicat在mysql数据库中创建一个函数,函数实现:输入id,返回对应的name:CREATE FUNCTION getNameFunc(N int) RETURNS varchar(255)BEGIN #声明一个变量a_name declare a_name varchar(255); set a_name:=(select name from student where id = N); return (a_name);END执行后原创 2022-04-22 22:25:44 · 1412 阅读 · 0 评论 -
C++调用mysql的存储过程
1、测试用表:2、创建一个存储过程:一个输入参数和一个输出参数:CREATE PROCEDURE GET_NAME(IN in_id INT, OUT out_name VARCHAR(255))BEGIN SELECT NAME INTO out_name FROM student WHERE id = in_id; SELECT out_name;END创建完成后用可视化工具查看并测试存储过程,保证逻辑没有问题。3、存储过程的调用:int main(){ //原创 2022-04-15 19:49:24 · 1732 阅读 · 2 评论 -
C++在mysql中一次执行多sql语句并遍历结果集
1、MySQL 5.1支持在单个查询字符串中指定的多语句的执行。要想与给定的连接一起使用该功能,打开连接时,必须将标志参数中的CLIENT_MULTI_STATEMENTS选项指定给mysql_real_connect()。也可以通过调用mysql_set_server_option(MYSQL_OPTION_MULTI_STATEMENTS_ON),为已有的连接设置它。在默认情况下,mysql_query()和mysql_real_query()仅返回第1个查询的状态,并能使用mysql_more_r原创 2022-04-15 12:07:58 · 1683 阅读 · 0 评论 -
C++向mysql批量插入数据
一、以下共统计了3种批量插入的方法:1、普通方法:一条一条插入;2、使用拼接语句一次性插入,拼接语句的语法如下:insert into table (col1,col2,col3) values (’a’,’b‘,’c‘),(’a1’,’b1‘,’c1‘),(’a2‘,’b2‘,’c2'),......对于拼接语句sql有一个长度限制:max_allowed_packet,查看限制最大值:show variables like ‘%max_allowed_packet%’,使用Navic原创 2022-04-14 22:14:58 · 3853 阅读 · 4 评论 -
C++获取mysql中Blob字段的数据(图片)二
使用c API预处理语句函数,直接上代码:要获取的表中的数据:#include <iostream>#include <string>#include <fstream>#include <sstream>#include <vector>#include <mysql.h>using namespace std;int main(){ //1.初始化环境 MYSQL* mySql = mysq原创 2022-04-13 21:13:13 · 1273 阅读 · 0 评论 -
C++获取mysql中Blob字段的数据(图片)一
1、使用到的主要函数说明:(1)、mysql_real_query()int mysql_real_query(MYSQL *mysql, const char *query, unsigned long length)对于包含二进制数据的查询,必须使用mysql_real_query()而不是mysql_query(),这是因为,二进制数据可能会包含‘\0’字符。此外,mysql_real_query()比mysql_query()快,这是因为它不会在查询字符串上调用strlen()。如原创 2022-04-13 16:33:07 · 1337 阅读 · 0 评论 -
使用C++向mysql中插入二进制数据(图片)方法二
1、方法一:https://zhangzc.blog.csdn.net/article/details/1241345862、方法二:使用预处理语句来插入二进制数据,主要使用MYSQL_STMT和MYSQL_BIND数据结构来完成。(1)结构说明:MYSQL_STMT:该结构表示预处理语句。通过调用mysql_stmt_init()创建语句,返回语句句柄,即指向MYSQL_STMT的指针。该句柄用户所有后续的与语句有关的函数,直至使用mysql_stmt_close()关闭了它为止。MY原创 2022-04-12 23:50:39 · 1480 阅读 · 0 评论 -
使用C++向mysql中插入二进制数据(图片)方法一
1、使用到的主要函数说明:(1)mysql_real_escape_string():unsigned long mysql_real_escape_string(MYSQL *mysql, char *to, const char *from, unsigned long length) 该函数用于创建可在SQL语句中使用的合法SQL字符串,即将二进制数据转换为合法字符串。按照连接的当前字符集,将“from”中的字符串编码为转义SQL字符串。将结果置于“to”中,并添加1个终结用NUL原创 2022-04-12 21:31:11 · 1154 阅读 · 0 评论 -
C++ 链接mysql数据库
1、常用函数说明:A: mysql_init()——初始化mysql环境:MYSQL* mysql_init(MYSQL* mysql);mysql: 有两种情况,一般都采用第⑴种方法.⑴参数传 NULL 值。这种情况很显然,是 mysql_init() 函数内部申请了一片内存,然后返回了首地址。MYSQL *ms_conn = mysql_init(NULL);用完记得要释放mysql_close(ms_conn), ms_conn = NULL;⑵参数传对象地址。这种情.原创 2022-04-11 17:33:54 · 420 阅读 · 0 评论 -
ADO连接MySql数据库之通过连接字符串
1、通过配置ODBC数据源的方式可以参考这里:https://zhangzc.blog.csdn.net/article/details/1202086272、连接字符串的获取:(1)、新建一个任意名称的文本文档mysql.txt,拓展名更改为:mysql.udl,双击打开。(2)、按图示步骤操作即可:点击下一页后点击完成按钮。也可以将Details展开,添加上:字符集和驱动程序位置两个参数。点击OK,最后又回到数据连接属性框体,连接字符串...原创 2021-09-09 20:48:07 · 842 阅读 · 0 评论 -
ADO通过配置数据源方式连接mysql数据库
1、安装MySql ODBC驱动,下载地址:https://dev.mysql.com/downloads/connector/odbc/选择相应的版本:安装直接下一步即可。2、配置ODBC数据源,选择相应位数的数据源:和下载的ODBC驱动的版本位数一致:打开并进行配置:点击Test进行测试,成功后点击ok按钮:3、测试:(1)、连接字符串如下:sprintf(szConnect, "DSN=zhangsanfeng;ser...原创 2021-09-09 20:17:24 · 339 阅读 · 0 评论