VS2019连接MySQL数据库的过程及常见问题总结


Posted in MySQL onNovember 27, 2021

今天下午开始配置各种环境,想着VS2019可以配合MySQL一起使用。中间出了不少错误,晚上九点左右配置成功如下图所示:

VS2019连接MySQL数据库的过程及常见问题总结

接下来说说具体步骤:

(1)首先准备好VS2019和MySQL的软件,各自官网都有,这里不再赘述;

(2)找到MySQL的安装目录,如图,找到这两个文件夹。

VS2019连接MySQL数据库的过程及常见问题总结

(3)新建一个工程后再新建一个main.cpp文件,为下面的配置环境做准备。

(4)打开项目属性,点击VC++目录,在包含目录中,将MySQL安装目录中的include文件路径添加到这里,如下图所示:

VS2019连接MySQL数据库的过程及常见问题总结

 (5)在属性页上,打开C/C++,选择常规,步骤同上,在附加包含目录中将MySQL文件中的include文件路径添加进去;

VS2019连接MySQL数据库的过程及常见问题总结

 (6)继续在属性页上,点开链接器选项,点击常规,将MySQL安装目录下的lib路径拷贝到附加库目录中;

VS2019连接MySQL数据库的过程及常见问题总结

 (7)继续在属性页的链接器中,点击输入选项,将libmysql.lib文件加进去,注意的是,只需要拷贝libmysql.lib这个名称即可,不需要添加路径。同样,这文件也在mydql安装文件夹中lib目录下:

VS2019连接MySQL数据库的过程及常见问题总结

 (8)查看属性页上方的平台,选择x64,x32可能会出错

VS2019连接MySQL数据库的过程及常见问题总结

 (9)把MySQL安装目录下的bin\libmysql.dll复制到c:\windows\system32下:

 VS2019连接MySQL数据库的过程及常见问题总结

 VS2019连接MySQL数据库的过程及常见问题总结

 这部安装完成后,可以编写测试代码了。测试代码如下:

#include <stdio.h>
#include <iostream>
#include "my_global.h"
#include "mysql.h"
using namespace std;
int main()
{
	cout << "hello world!" << endl;
	MYSQL mysql;
	MYSQL_RES* res;
	MYSQL_ROW row;
	mysql_init(&mysql);
	mysql_options(&mysql, MYSQL_SET_CHARSET_NAME, "gbk");
	//注意:参数一定要对上。
	//第二个参数为主机地址localhost,第三个参数为用户名
	//第四个参数为用户密码,第五个参数为连接的数据库
	//第六个参数为MySQL的端口号3306
	if (mysql_real_connect(&mysql, "localhost", "root", "123456",
		"myemployees", 3306, NULL, 0) == NULL) 
	{
		cout << (mysql_error(&mysql));
	}
	mysql_query(&mysql, "SELECT * from myemployees.employees");
	res = mysql_store_result(&mysql);
	//显示数据
	//给ROW赋值,判断ROW是否为空,不为空就打印数据。
	while (row = mysql_fetch_row(res))
	{
		printf("%s  ", row[0]);//打印ID
		printf("%s  ", row[1]);//打印ID
		cout << endl;
	}
	//释放结果集
	mysql_free_result(res);
	//关闭数据库
	mysql_close(&mysql);
	//停留等待
	getchar();
	system("pause");
	return 0;
}

运行过程中,如果出现了如下图所示的错误,则需要进行排查配置环境变量的问题。

 VS2019连接MySQL数据库的过程及常见问题总结

1、项目右键属性,检查一下VC++目录配置;

VS2019连接MySQL数据库的过程及常见问题总结

 2、检查链接器中的输入选项

VS2019连接MySQL数据库的过程及常见问题总结

 (3)我把这“libmysql.dll 和 libmysql.lib”文件放在项目里的.cpp文件夹下。

这三步可以检查具体大部分的问题。

一定要注意的是MySQL的参数不要写错,写错有时会出现如下Access denied for user 'ODBC'@'localhost' (using password: NO),可以去mysql的bin目录下输入命令:

mysql -u root -p,检查数据库用户名,密码啥的是否错误。正确输入如下图所示:

VS2019连接MySQL数据库的过程及常见问题总结

到此这篇关于VS2019连接MySQL数据库的常见问题总结的文章就介绍到这了,更多相关VS2019连接MySQL数据库内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

MySQL 相关文章推荐
mysql知识点整理
Apr 05 MySQL
将图片保存到mysql数据库并展示在前端页面的实现代码
May 02 MySQL
MySQL 存储过程的优缺点分析
May 20 MySQL
MYSQL数据库使用UTF-8中文编码乱码的解决办法
May 26 MySQL
新手入门Mysql--概念
Jun 18 MySQL
MySQL的Query Cache图文详解
Jul 01 MySQL
MySQL中varchar和char类型的区别
Nov 17 MySQL
MySQL中IO问题的深入分析与优化
Apr 02 MySQL
MySQL 数据 data 基本操作
May 04 MySQL
MYSQL事务的隔离级别与MVCC
May 25 MySQL
mysql数据库隔离级别详解
Jun 16 MySQL
MySQL添加索引特点及优化问题
Jul 23 MySQL
Linux7.6二进制安装Mysql8.0.27详细操作步骤
SQL优化老出错,那是你没弄明白MySQL解释计划用法
Nov 27 #MySQL
mysql timestamp比较查询遇到的坑及解决
Nov 27 #MySQL
分享mysql的current_timestamp小坑及解决
Nov 27 #MySQL
MySQL中CURRENT_TIMESTAMP的使用方式
Nov 27 #MySQL
MySQL Innodb索引机制详细介绍
Nov 23 #MySQL
浅谈mysql哪些情况会导致索引失效
Nov 20 #MySQL
You might like
PHP执行Curl时报错提示CURL ERROR: Recv failure: Connection reset by peer的解决方法
2014/06/26 PHP
PHP上传图片类显示缩略图功能
2016/06/30 PHP
PHP ElasticSearch做搜索实例讲解
2020/02/05 PHP
Javascript注入技巧
2007/06/22 Javascript
ext jquery 简单比较
2010/04/07 Javascript
学习javascript,实现插入排序实现代码
2011/07/31 Javascript
javascript设计模式之中介者模式Mediator
2014/12/30 Javascript
自己动手手写jQuery插件总结
2015/01/20 Javascript
JS动态修改表格cellPadding和cellSpacing的方法
2015/03/31 Javascript
jQuery实现放大镜效果实例代码
2016/03/17 Javascript
Node.js Streams文件读写操作详解
2016/07/04 Javascript
html+js+highcharts绘制圆饼图表的简单实例
2016/08/04 Javascript
Vuejs 单文件组件实例详解
2018/02/09 Javascript
从零学Python之引用和类属性的初步理解
2014/05/15 Python
Python双精度浮点数运算并分行显示操作示例
2017/07/21 Python
python opencv之SURF算法示例
2018/02/24 Python
python智联招聘爬虫并导入到excel代码实例
2019/09/09 Python
Python + Flask 实现简单的验证码系统
2019/10/01 Python
基于python解线性矩阵方程(numpy中的matrix类)
2019/10/21 Python
python创建子类的方法分析
2019/11/28 Python
flask框架url与重定向操作实例详解
2020/01/25 Python
解决Tensorflow sess.run导致的内存溢出问题
2020/02/05 Python
简单了解django处理跨域请求最佳解决方案
2020/03/25 Python
Django CBV模型源码运行流程详解
2020/08/17 Python
css3实现wifi信号逐渐增强效果实例
2017/08/09 HTML / CSS
Maxpeedingrods美国:高性能汽车零件
2020/02/14 全球购物
什么是View State?
2013/01/27 面试题
单位单身证明范本
2014/01/11 职场文书
汉语言文学毕业生自荐信范文
2014/03/24 职场文书
学校党的群众路线教育实践活动总结材料
2014/10/30 职场文书
高校教师个人工作总结2014
2014/12/17 职场文书
初三语文教学计划
2015/01/22 职场文书
证婚人致辞精选
2015/07/28 职场文书
vue实力踩坑之push当前页无效
2022/04/10 Vue.js
Python实现信息管理系统
2022/06/05 Python
教你nginx跳转配置的四种方式
2022/07/07 Servers