C/C++ vs2017连接MySQL数据库 - 增删改查(详细步骤)

vs2017连接Mysql数据库 看到网上一些教程需要安装3个程序用来建立连接,个人觉得没什么必要,这里的话介绍一种不需要下载多余的插件就能成功连接的方法(亲测有用~,我的mysql版本是8.0.19,vs版本是2017 community)。 只需要有mysql和vs2017即可 第一步 首先,我们先把解决方案平台改为x64,见图一 图一 第二步 我们要连接mysql就肯定要用到mysql里的一些头文件,所以我们要添加一下附加... 阅读详情
AI摘要

本文详细介绍了如何使用C/C++通过Visual Studio配置并连接MySQL数据库,包括数据库连接、选择数据库、插入、删除、修改和查询操作的步骤及示例代码。

在开发中,数据库是必不可少,这篇文章将介绍使用C/C++如何进行连接MySQL数据库,并实现增删改查操作!

注意,此篇文章所讲的是C/C++如何操控MySQL进行简单的、常用的“增删改查”的操作!



一、配置Visual Studio

  1. 找到自己安装MySQL的路径,确保有include和lib两个文件夹
    在这里插入图片描述

  2. 打开创建的Visual Studio项目,切换x64平台
    在这里插入图片描述

    注意:如果你的项目中没有x64平台,请严格按照下面图片的步骤进行操作
    a. 点击下拉框,点击配置管理器
    在这里插入图片描述
    b.在弹出的配置管理器页面,创建一个x64平台,并确定
    在这里插入图片描述
    在这里插入图片描述

    c.将两个平台都切换至x64,关闭即可
    在这里插入图片描述
    关闭后,也许你会发现自己的项目中已经没有生成或者重写生成的功能,这问题不大,不影响正常编译运行代码!

  3. 点击项目,属性
    在这里插入图片描述

  4. 依次点击 配置属性 - VC++目录 - 包含目录 - 编辑,将include路径粘贴于此

    在这里插入图片描述
    在这里插入图片描述

  5. 依次点击 配置属性 - VC++目录 - 库目录 - 编辑,将lib路径粘贴于此
    在这里插入图片描述
    在这里插入图片描述

  6. 依次点击 配置属性 - 链接器 - 输入 - 附加依赖项 - 编辑,再次输入字符串 libmysql.lib

    注意,不是将libmysql.lib的路径复制到这里,是将字符串复制到这里!
    在这里插入图片描述
    在这里插入图片描述

  7. 将lib目录下的libmysql.lib文件复制到C:\Windows\System32目录下
    在这里插入图片描述

请严格按照上面图片的步骤进行操作,否则会出现数据库连接不上的问题!
另外,如果你的项目没有x64平台,而是根据步骤2进行创建的,那么你需要在代码中加入此行代码:

#pragma comment(lib, "libmysql.lib")

以防止连接不上数据库的问题!


二、C/C++连接数据库

操纵数据库所用到的函数:

函数解析
mysql_init初始化数据库句柄
mysql_options设置字符编码
mysql_real_connect连接数据库
mysql_select_db选择数据库
mysql_real_query执行sql语句,成功返回0,失败返回非0
mysql_store_result获取查询的结果集
mysql_fetch_row获取查询到的一行数据
mysql_free_result释放结果集
mysql_close关闭数据库
mysql_error获取数据库当前操作失败的原因

操纵数据库所用到的变量类型:

类型解析
MYSQL数据库句柄
MYSQL_RES查询结果集
MYSQL_ROW记录结果集结构体

当然除了这些,还有许多其他的,但是不常用,我这里列举的都是项目中比较常用的mysql函数;有兴趣的朋友可以自己去了解一下mysql的其他函数!


根据自己的项目需求提前创建好数据库和表:
例如我这里提前创建好了数据库:connect_c_cpp_text
表:student
表的字段设置如下:
在这里插入图片描述


1. 连接数据库 与 选择数据库

bool connectDB(MYSQL &mysql) {
	// 1.初始化数据库句柄
	mysql_init(&mysql);
	
	// 2.设置字符编码
	mysql_options(&mysql, MYSQL_SET_CHARSET_NAME, "gbk");

	// 3.连接数据库										// 账号	  密码         数据库名
	MYSQL *ret = mysql_real_connect(&mysql, "127.0.0.1", "root", "yang", "connect_c_cpp_text", 3306, NULL, 0);
	if (ret == NULL) {
		printf("数据库连接失败!失败原因:%s\n", mysql_error(&mysql));
		return false;
	}

	printf("数据连接成功!\n");

	// 选择数据库,成功返回0,失败返回非0
	int res = mysql_select_db(&mysql, "connect_c_cpp_text");
	if (res) {
		printf("选择数据库失败!失败原因%s\n", mysql_error(&mysql));
		return false;
	}

	printf("数据库选择成功!\n");

	return true;
}

2. 插入表数据

根据自己的表字段进行设置sql语句,再执行即可!

bool addTableData(int id, char *name, int age, char *sex) {
	MYSQL mysql;			// 数据库句柄
	char sql[SQL_MAX];		// 存储sql语句

		// 连接数据库
	if (!connectDB(mysql)) {
		return false;
	}

	// C语言字符串组合
	snprintf(sql, SQL_MAX, "INSERT INTO student VALUES(%d, '%s', %d, '%s');", id, name, age, sex);
	printf("插入sql语句:%s\n", sql);
	// 如果id字段用了auto_increment进行修饰,那么可以使用以下数据库语句:
	// snprintf(sql, SQL_MAX, "INSERT INTO student(name, age, sex) VALUES('%s', %d, '%s');", name, age, sex);

	// 执行sql语句,成功返回0
	//int ret = mysql_query(&mysql, sql);		
	int ret = mysql_real_query(&mysql, sql, (unsigned long)strlen(sql));		
	printf("执行插入语句,插入返回结果:%d\n", ret);

	if (ret) {
		printf("插入表数据失败!失败原因:%s\n", mysql_error(&mysql));
		return false;
	}
	printf("插入表数据成功!\n");

	// 关闭数据库
	mysql_close(&mysql);

	return true;
}

3. 删除表数据

根据自己的表字段进行设置sql语句,再执行即可!

bool delTableData(int id) {
	MYSQL mysql;			// 数据库句柄
	char sql[SQL_MAX];		// 存储sql语句

		// 连接数据库
	if (!connectDB(mysql)) {
		return false;
	}

	// C语言字符串组合
	snprintf(sql, SQL_MAX, "DELETE FROM student WHERE id = %d;", id);
	printf("删除sql语句:%s\n", sql);

	// 执行sql语句,成功返回0
	//int ret = mysql_query(&mysql, sql);
	int ret = mysql_real_query(&mysql, sql, (unsigned long)strlen(sql));
	printf("执行删除语句,插入返回结果:%d\n", ret);

	if (ret) {
		printf("删除表数据失败!失败原因:%s\n", mysql_error(&mysql));
		return false;

	}
	printf("删除表数据成功!\n");

	// 关闭数据库
	mysql_close(&mysql);

	return true;
}

4. 修改表数据

根据自己的表字段进行设置sql语句,再执行即可!

bool altTableData(int id, int age) {
	MYSQL mysql;		// 数据库句柄
	char sql[SQL_MAX];	// sql语句

	// 连接数据库
	if (!connectDB(mysql)) {
		return false;
	}

	// C语言组合字符串
	snprintf(sql, SQL_MAX, "UPDATE student SET age = %d WHERE id = %d;", age, id);
	printf("修改sql语句:%s\n", sql);

	// 执行sql语句,成功返回0
	//int ret = mysql_query(&mysql, sql);
	int ret = mysql_real_query(&mysql, sql, (unsigned long)strlen(sql));
	printf("执行修改语句,修改返回结果:%d\n", ret);

	if (ret) {
		printf("数据修改失败!失败原因:%s\n", mysql_error(&mysql));
		return false;
	}

	printf("修改表数据成功!\n");

	// 关闭数据库
	mysql_close(&mysql);

	return true;
}

5. 查询表数据

根据自己的表字段进行设置sql语句,再执行即可!

bool queTableData() {
	MYSQL mysql;		// 数据库句柄
	MYSQL_RES* res;		// 查询结果集
	MYSQL_ROW row;		// 记录结构体
	char sql[SQL_MAX];	// SQL语句

	// 连接数据库
	if (!connectDB(mysql)) {
		return false;
	}

	// C语言组合字符串
	snprintf(sql, SQL_MAX, "SELECT id, name, age, sex FROM student;");
	printf("查询sql语句:%s\n", sql);

	// 查询数据
	//int ret = mysql_query(&mysql, "select * from student;");		// 等效于下面一行代码
	//int ret = mysql_query(&mysql, sql);
	int ret = mysql_real_query(&mysql, sql, (unsigned long)strlen(sql));
	printf("执行查询语句,查询返回结果:%d\n", ret);

	if (ret) {
		printf("数据查询失败!失败原因:%s\n", mysql_error(&mysql));
		return false;
	}
	printf("数据查询成功!\n");
	


	// 获取结果集
	res = mysql_store_result(&mysql);

	// 获取查询到的一行数据
	// 给row赋值,判断row是否为空,不为空就打印数据。
	while (row = mysql_fetch_row(res)) {
		printf("%d  ", atoi(row[0]));	// 转换为int类型,打印id
		printf("%s  ", row[1]);			// 打印姓名
		printf("%d  ", atoi(row[2]));	// 转换为int类型,打印年龄
		printf("%s  \n", row[3]);		// 打印性别
	}

	// 释放结果集
	mysql_free_result(res);

	// 关闭数据库
	mysql_close(&mysql);

	return true;
}

全部测试代码:

#include <stdio.h>
#include <mysql.h> // mysql文件

#define SQL_MAX 256		// sql语句字符数组最大值


// 连接数据库
static bool connectDB(MYSQL &mysql);
// 插入数据
bool addTableData(int id, char *name, int age, char *sex);
// 删除数据
bool delTableData(int id);
// 修改数据
bool altTableData(int id, int age);
// 查询数据
bool queTableData();

int main(void) {
	delTableData(1);

	addTableData(1, (char *)"小明", 20, (char *)"男");

	altTableData(1, 22);

	queTableData();

	return 0;
}


/*****************************************************
 * 功能:连接connect_c_cpp_text数据库,并选择数据库
 *
 * 参数:
 *			mysql - 数据库句柄
 *
 * 返回值:
 *			连接成功返回true,连接失败返回false
 *****************************************************/
bool connectDB(MYSQL &mysql) {
	// 1.初始化数据库句柄
	mysql_init(&mysql);
	
	// 2.设置字符编码
	mysql_options(&mysql, MYSQL_SET_CHARSET_NAME, "gbk");

	// 3.连接数据库
	MYSQL *ret = mysql_real_connect(&mysql, "127.0.0.1", "root", "yang", "connect_c_cpp_text", 3306, NULL, 0);
	if (ret == NULL) {
		printf("数据库连接失败!失败原因:%s\n", mysql_error(&mysql));
		return false;
	}

	printf("数据连接成功!\n");

	// 选择数据库
	int res = mysql_select_db(&mysql, "connect_c_cpp_text");
	if (res) {
		printf("选择数据库失败!失败原因%s\n", mysql_error(&mysql));
		return false;
	}

	printf("数据库选择成功!\n");

	return true;
}


/****************************************************
 * 功能:向student表中插入一条记录
 * 
 * 参数:
 *			id	 - 对应表字段id,编号
 *			name - 对应表字段name,姓名
 *			age	 - 对应表字段age,年龄
 *			sex	 - 对应表字段sex,性别
 *
 * 返回值:
 *			插入成功返回true,插入失败返回false
 ****************************************************/
bool addTableData(int id, char *name, int age, char *sex) {
	MYSQL mysql;			// 数据库句柄
	char sql[SQL_MAX];		// 存储sql语句

		// 连接数据库
	if (!connectDB(mysql)) {
		return false;
	}

	// C语言字符串组合
	snprintf(sql, SQL_MAX, "INSERT INTO student VALUES(%d, '%s', %d, '%s');", id, name, age, sex);
	printf("插入sql语句:%s\n", sql);
	// 如果id字段用了auto_increment进行修饰,那么可以使用以下数据库语句:
	// snprintf(sql, SQL_MAX, "INSERT INTO student(name, age, sex) VALUES('%s', %d, '%s');", name, age, sex);

	// 执行sql语句,成功返回0
	//int ret = mysql_query(&mysql, sql);		
	int ret = mysql_real_query(&mysql, sql, (unsigned long)strlen(sql));		
	printf("执行插入语句,插入返回结果:%d\n", ret);

	if (ret) {
		printf("插入表数据失败!失败原因:%s\n", mysql_error(&mysql));
		return false;
	}
	printf("插入表数据成功!\n");

	// 关闭数据库
	mysql_close(&mysql);

	return true;
}

/*****************************************************
 * 功能:删除student表中id字段等于参数id的记录
 *
 * 参数:
 *			id - 对应表字段id,编号
 *
 * 返回值:
 *			删除成功返回true,删除失败返回false
 *****************************************************/
bool delTableData(int id) {
	MYSQL mysql;			// 数据库句柄
	char sql[SQL_MAX];		// 存储sql语句

		// 连接数据库
	if (!connectDB(mysql)) {
		return false;
	}

	// C语言字符串组合
	snprintf(sql, SQL_MAX, "DELETE FROM student WHERE id = %d;", id);
	printf("删除sql语句:%s\n", sql);

	// 执行sql语句,成功返回0
	//int ret = mysql_query(&mysql, sql);
	int ret = mysql_real_query(&mysql, sql, (unsigned long)strlen(sql));
	printf("执行删除语句,插入返回结果:%d\n", ret);

	if (ret) {
		printf("删除表数据失败!失败原因:%s\n", mysql_error(&mysql));
		return false;

	}
	printf("删除表数据成功!\n");

	// 关闭数据库
	mysql_close(&mysql);

	return true;
}


/******************************************************
 * 功能:根据参数id,修改对应表记录的年龄为参数age
 *
 * 参数:
 *			id	- 对应表字段id,编号
 *			age - 对应表字段age,年龄
 *
 * 返回值:
 *			修改成功返回true,修改失败返回false
 *******************************************************/
bool altTableData(int id, int age) {
	MYSQL mysql;		// 数据库句柄
	char sql[SQL_MAX];	// sql语句

	// 连接数据库
	if (!connectDB(mysql)) {
		return false;
	}

	// C语言组合字符串
	snprintf(sql, SQL_MAX, "UPDATE student SET age = %d WHERE id = %d;", age, id);
	printf("修改sql语句:%s\n", sql);

	//int ret = mysql_query(&mysql, sql);
	int ret = mysql_real_query(&mysql, sql, (unsigned long)strlen(sql));
	printf("执行修改语句,修改返回结果:%d\n", ret);

	if (ret) {
		printf("数据修改失败!失败原因:%s\n", mysql_error(&mysql));
		return false;
	}

	printf("修改表数据成功!\n");

	// 关闭数据库
	mysql_close(&mysql);

	return true;
}


/********************************************************
 * 功能:查询student表中所有数据记录,并输出至控制台
 * 
 * 参数:
 *			无
 *
 * 返回值:
 *			查询成功返回true,查询失败返回false
 ********************************************************/
bool queTableData() {
	MYSQL mysql;		// 数据库句柄
	MYSQL_RES* res;		// 查询结果集
	MYSQL_ROW row;		// 记录结构体
	char sql[SQL_MAX];	// SQL语句

	// 连接数据库
	if (!connectDB(mysql)) {
		return false;
	}

	// C语言组合字符串
	snprintf(sql, SQL_MAX, "SELECT id, name, age, sex FROM student;");
	printf("查询sql语句:%s\n", sql);

	// 查询数据
	//int ret = mysql_query(&mysql, "select * from student;");		// 等效于下面一行代码
	//int ret = mysql_query(&mysql, sql);
	int ret = mysql_real_query(&mysql, sql, (unsigned long)strlen(sql));
	printf("执行查询语句,查询返回结果:%d\n", ret);

	if (ret) {
		printf("数据查询失败!失败原因:%s\n", mysql_error(&mysql));
		return false;
	}
	printf("数据查询成功!\n");
	


	// 获取结果集
	res = mysql_store_result(&mysql);

	// 获取查询到的一行数据
	// 给row赋值,判断row是否为空,不为空就打印数据。
	while (row = mysql_fetch_row(res)) {
		printf("%d  ", atoi(row[0]));	// 转换为int类型,打印id
		printf("%s  ", row[1]);			// 打印姓名
		printf("%d  ", atoi(row[2]));	// 转换为int类型,打印年龄
		printf("%s  \n", row[3]);		// 打印性别
	}

	// 释放结果集
	mysql_free_result(res);

	// 关闭数据库
	mysql_close(&mysql);

	return true;
}


总结:
只是简单的写下了C/C++连接数据和和操纵数据库的代码,并没有对其中函数和变量进行讲解;都有注释,自己看吧,看不懂再评论提问吧!

另外,上面sql语句的关键我都使用了大写,为什么呢?就是为了区分作用,使得很好检查sql语句的语法错误!

基于JDBC下C++连接MySQL数据库的解决方法 后端开发过程遇到的问题总结(3) 这个东西真给我搞吐了,网上找了很多方法,最终在同学的帮助下终于解决了此问题!话不多说,直接上方法! (1)下载MySQL Connector C++和boost库,我使用的是MySQL Connector C++ 1.1.12版本的库,下载好以后进入vs2... 阅读详情

相关推荐

C++通过ODBC方式连接数据库SQLServer及增删查改操作【图书借阅系统为例】

C++通过ODBC方式连接数据库SQLServer及增删查改操作【图书借阅系统为例】 文章目录 前言 一、ODBC如何配置 二、SQL Server如何设置账号密码 三、C++连接数据库以及增删查改操作的代码实现 四、源代码 前言 ​ 大二学习了《数据库原理及应用》,期末做课程设计。因为大一学的C++,所以决定用C++写。这里以《图书借阅系统》为例,该系统做的并不是很完整,但已经能够体现C++如何对数据库SQL Server进行增删查改操作。以下是本人的学习心得,仅供学习参考。 一、ODBC如

m0_53889370的博客 1万+

腾讯云配置mysql

配置mysql允许远程链接   #mysql -u root -p Enter password: …… mysql>   mysql>update user set host = ‘%’ where user = ‘root’; mysql>select host, user from user; c++ 链接 #define _CRT_SECURE_NO_WARNINGS #include<iostream> #include<Windows.h> #inc..

weixin_39518639的博客 590

MCP详解:手把手教你理解和如何使用各种开源MCP服务

MCP 作为一种开放协议,为 AI 模型与外部世界的连接提供了标准化的解决方案。它不仅降低了开发门槛,还极大地扩展了 AI 应用的边界。无论是开发者还是普通用户,都可以通过 MCP 更高效地利用 AI 技术,实现更多智能化的功能。

王哥儿聊AI的博客 6051

VS使用ODBC连接MySql

visual studio2017使用ODBC连接MySql有两种方案进行连接1.去官方下载MySQL连接ODBC的插件[点击](https://dev.mysql.com/downloads/connector/odbc/)2.下载安装3.进入控制面板—>系统与安全—>管理工具4.然后打开系统DSN,再点击添加5.回到VS里,点击工具连接数据库,使用ODBC数据源第二种方法呢,官方直接为VS定制了一个专门插件[点击](https://dev.mysql.com/downloads/window

冷崖的博客 4559

【excel+vba】一表拆多表+不同收件人附带不同附件

快捷处理:拆分多个不同表 给不同人发送不同内容且附带附件

weixin_42779327的博客 2968

变压器耦合放大器(低频应用+高频应用)

变压器耦合放大器(低频应用+高频应用)

m0_54943120的博客 2274

C++ ADO方式连接mysql数据库

对于软件开发其实说白了就是在不停地和数据打交道, 所以数据库的操作是必不可少的, 接下来介绍VC开发中利用ADO建立ODBC数据源来访问MySQL数据库.        从我接触的数据库编程方式来说, 我觉得在vc开发连接数据库是比较难的, 也是很容易出错. 在android中, 系统自带sqlite数据库,只需要使用SQLiteOpenHelper抽象类即可完成与数据库的操作. 在java中,

lbcab的博客 1万+

使用Tansformer分割三维腹部多器官--UNETR实战

不会 transformer 没关系,本教程开箱即用。Tina姐总算对transformer下手了,之前觉得难,因为刚开始学序列模型的时候就没学会。然后就一直排斥学transformer。这两周没什么事,加上MONAI有现成的教程,就打算先跑通后,再学理论。然后,顺利的跑通了代码,再学了一周理论,发现它也不过如此嘛,入门还是很容易的。有同学想了解的transformer的话,可以先看完这个实战教程,如果感兴趣,后续会出一个transformer入门路线。利用纯Transformers作为编码器来学习输入量的

Tina姐的博客 1万+

C++连接MySQL数据库实现对一个简单的学生信息系统的增删改查

(6)回到VS,继续打开解决方案的属性页——找到链接器——进入输入——附加依赖项——将libmysql.lib添加到依赖项中(末尾加上分号";(2)打开项目——右键解决方案——点击属性——点击VC++目录——将mysql.h文件路径添加到包含目录中去;(记得在路径末尾加上分号:";(3)在刚刚找到的mysql.h目录的上一级目录中,找到lib目录,进入lib目录,复制路径。中添加lib文件路径(同样在路径末尾加上分号";(1)在MySQL安装路径中找到。(5)进入lib目录,找到。这个文件,复制文件路径;

m0_50502677的博客 1960

从零到精通:ROS2 MoveIt2与MPC机械臂轨迹规划的完整配置流程

本文详细介绍了ROS2 MoveIt2与MPC机械臂轨迹规划的完整配置流程,从环境准备到高级功能扩展,帮助开发者实现精准控制。通过集成模型预测控制(MPC),机械臂能够优化复杂轨迹规划,处理动态避障,提升工业自动化效率。

juice的博客 705

【KDD2024】ShapeFormer:用于多元时间序列分类的Shapelet Transformer

多元时间序列分类(MTSC)因其在现实世界中的广泛应用而吸引了大量研究关注。最近,Transformer在MTSC中取得了先进的性能。然而,

m0_52597077的博客 4738

vs2017c语言连接mysql,C/C++ vs2017连接MySQL数据库 - 增删改查(详细步骤)

#include #include // mysql文件#define SQL_MAX 256// sql语句字符数组最大值// 连接数据库static bool connectDB(MYSQL &mysql);// 插入数据bool addTableData(int id, char *name, int age, char *sex);// 删除数据bool delTableData(...

weixin_39796363的博客 413

基于 OptiSystem 的掺铒光纤放大器(EDFA)分析

通过构建 EDFA 仿真模型,系统分析了铒离子掺杂半径、离子浓度、光纤长度及泵浦功率等关键参数对放大器增益和噪声特性的影响规律,为 EDFA 的优化设计提供了理论依据与仿真支撑。继续增大至 9μm,增益趋于稳定(约 19dB)。继续增加至 200mW,增益仅增加 2dB,表明泵浦功率存在阈值效应(约 100mW),超过后增益饱和明显。:作为增益介质,主要参数包括光纤长度(5~50m)、铒离子掺杂半径(1~10μm)、离子浓度(1×10²⁵~5×10²⁵m⁻³)、纤芯半径 2.2μm、数值孔径 0.24。

2501_91855190的博客 2674

C语言连接mysql数据库详细步骤

文章目录一、准备工作1.环境配置2.新建空项目3.给新建项目配置mysql依赖文件及库二、开始准备连接1.新建源文件2.写入头文件3.增加主函数三、从数据库获取数据1.下面是mysql可视化工具(数据库里的数据)2.继续增加代码获取数据3.增加设置编码代码(具体位置看总体代码)四、总体代码参考: 一、准备工作 1.环境配置 mysql数据库安装(我使用的是mysql5.6) C/C++编译器(我的是VS2017) 2.新建空项目 3.给新建项目配置mysql依赖文件及库 找到mysql安装目录

君莫笑 1万+

使用Matlab与V-REP联合仿真

在Matlab中,我们可以使用V-REP提供的远程API(Application Programming Interface)来连接到V-REP仿真环境。为了连接Matlab与V-REP,我们需要在Matlab中添加V-REP的远程API函数库。你可以根据具体的需求编写Matlab脚本来控制V-REP场景中的机器人,并进行系统建模和仿真。一旦成功连接到V-REP,我们可以使用Matlab来控制V-REP场景中的机器人。在本文中,我们将介绍如何使用Matlab与V-REP进行联合仿真,并提供相应的源代码。

HackMasterX的博客 1853

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

vs2017C++连接MySql数据库

vs2017C++连接MySql数据库 趁着寒假学了一点MySql数据库就想着连上数据库试试,结果搜了各种连接数据库的办法还是一直报错,百度了将近一天后终于连上了!!! 那就根据我遇见的问题还有综合各种报错写一下解决方案吧!! 步骤如下: 项目–>属性 C/C++中–>常规–>附加包含目录 添加Mysql Sever的include目录,(每个人的安装目录都不同) 链接器–&...

weixin_44620183的博客 2573

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

VS 2017 连接MySQL数据库

文章目录一、在操作之间首先安装软件二、VS 2017环境配置三、数据库操作代码 一、在操作之间首先安装软件 1、Windows下安装MySQL数据库 2、安装Visual Studio 2017 二、VS 2017环境配置 点击项目->项目属性,操作如图: 2、选择C/C++,在常规的附加包含目录添加mysql安装地址中include文件的地址,如我的地址是C:\Program Fil...

qq_43630810的博客 2779

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

vs2017连接mysql_【C++】VS2015/VS2017连接Mysql数据库教程

要给C++程序连接MySQL数据库,分别需要:安装MySQL Server下载MySQL Connector/C++在IDE中配置依赖然后就可以在代码中调用API,来连接以及操作数据库。一、安装MySQL Server这是MySQL 数据库服务,下载了它才能在自己的电脑中使用MySQL。下载页面:Download MySQL Installer参考教程:windows10上安装mysql(详细步骤...

weixin_29011239的博客 780

VS2017C++ Mfc+Mysql实现数据库访问

vs2017 通过c++连接mysql ,个人觉得比较麻烦,所以整理了网上的资料仅供参考 1.首先得安装visual+studio 2017 务必安装mfc选项。 2.安装数据库mysql 【mysql-installer-community-8.0.22.0】 参考https://cloud.tencent.com/developer/article/1636375 3.安装odbc【mysql-connector-odbc-8.0.22-winx64.msi】 ODBC下载传送门 ...

运动的肉肉子的博客 1327

VS2017连接MYSQL 8.0(小白必看!)

MySQL下载地址:https://dev.mysql.com/downloads/windows/ MySQL命令手册:http://www.w3school.com.cn/sql/sql_syntax.asp # 如果运行软件提示找不到libmysql.dll请把这个文件从之前附加的目录里面复制到软件的debug目录!!!注意区分32位的目录和64位目录

Alone的博客 4万+

【C++】VS2015/VS2017连接Mysql数据库教程

本文转载自:http://www.cnblogs.com/flipped/p/6810216.html 作者:flipped 转载请注明该声明。要给C++程序连接MySQL数据库,分别需要: 安装MySQL Server 下载MySQL Connector/C++ 在IDE中配置依赖 然后就可以在代码中调用API,来连接以及操作数据库。 一、安装MySQL Server 这是M...

w36680130的博客 760

在vs2017环境下利用C++连接数据库并实现查询

在我先前一段时间学习数据的过程中就有过利用C语言来实现对数据库操作的想法。因为在程序中不免需要从数据库中读取数据,于是在最近就开始琢磨这些东西,为实现该效果,我封装了两个类,一个用于实现数据库的连接,一个实现数据库的查询操作。并且都需要调用mysql本身的API。下面附上操作方法。 当然进行本篇博客的操作的前提是电脑上必须已经安装好mysql,并可以利用cmd命令行进行mysql的操作,如下图 ...

weixin_43167499的博客 5427

VS2017使用C++连接Mysql

主要参考该博客https://blog.youkuaiyun.com/qq_21095573/article/details/82824693 主要步骤 新建空项目,并添加一个C++源文件后,因为我安装的Mysql是64位版本,所以首先需要把编译器改为x64 ,右键项目名称选择属性 项目属性页->C/C+±>常规->附加包含目录:xxx\MySQL Server 8.0\include(就是在自己安装MySQL的目录下找到) 项目属性页->链接器->常规->附加库目录:x.

weixin_41569530的博客 436

vs c 链接mysql_【C++】VS2015/VS2017连接Mysql数据库教程

要给C++程序连接MySQL数据库,分别需要:安装MySQL Server下载MySQL Connector/C++在IDE中配置依赖然后就可以在代码中调用API,来连接以及操作数据库。一、安装MySQL Server这是MySQL 数据库服务,下载了它才能在自己的电脑中使用MySQL。下载页面:Download MySQL Installer参考教程:windows10上安装mysql(详细步骤...

weixin_40001442的博客 538

MFC ADO连接MYSQL实现增删改查 完整实现(MFC、C++通用)

前言: 转载请附上连接,本帖原创请勿照抄。 在每次连接MySQL或者别的数据库的时候总有些不明白的地方,看着优快云或者百度出来一堆答案总感觉有点杂乱无章,看多了实现了还好没实现就会感觉很烦。总的来说还是写的代码量少,没搞清楚。 接下来为大家写完整实现的代码,简洁明了、直接了当。(有问题请留言看到会回复) VS2017(C++项目、MFC、其他类型项目代码都可以直接拷过去把...

断点 2131
上一篇: Qt vs2017中解决“调试模式下无法修改代码”的问题
下一篇: Qt vs2017程序打包发布(图文详细步骤)
cpp_learners
博客等级 码龄7年 1526粉丝 274原创
评论 77
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

cpp_learners

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值