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 相关文章推荐
Idea连接MySQL数据库出现中文乱码的问题
Apr 14 MySQL
MySQL root密码的重置方法
Apr 21 MySQL
MySQL EXPLAIN输出列的详细解释
May 12 MySQL
MySQL表字段时间设置默认值
May 13 MySQL
Mysql基础知识点汇总
May 26 MySQL
解决Mysql的left join无效及使用的注意事项说明
Jul 01 MySQL
Mysql案例刨析事务隔离级别
Sep 25 MySQL
MySQL如何快速创建800w条测试数据表
Mar 17 MySQL
MySQL sql模式设置引起的问题
May 15 MySQL
SQL语句中EXISTS的详细用法大全
Jun 25 MySQL
MySQL事务的隔离级别详情
Jul 15 MySQL
MySQL深分页问题解决思路
Dec 24 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简单静态页生成过程
2008/03/27 PHP
解析mysql left( right ) join使用on与where筛选的差异
2013/06/18 PHP
php多次include后导致全局变量global失效的解决方法
2015/02/28 PHP
php使用str_shuffle()函数生成随机字符串的方法分析
2017/02/17 PHP
YII2.0框架行为(Behavior)深入详解
2019/07/26 PHP
js实现一个省市区三级联动选择框代码分享
2013/03/06 Javascript
一个支持任意尺寸的图片上下左右滑动效果
2014/08/24 Javascript
javascript包装对象实例分析
2015/03/27 Javascript
深入理解jQuery之防止冒泡事件
2016/05/24 Javascript
url中的特殊符号有什么含义(推荐)
2016/06/17 Javascript
JS弹出新窗口被拦截的解决方法
2016/08/09 Javascript
纯前端JavaScript实现Excel IO案例分享
2016/08/26 Javascript
javascript数组对象常用api函数小结(连接,插入,删除,反转,排序等)
2016/09/20 Javascript
js初始化验证实例详解
2016/11/26 Javascript
将angular-ui的分页组件封装成指令的方法详解
2017/05/10 Javascript
JS实现左边列表移到到右边列表功能
2018/03/28 Javascript
详解NodeJs开发微信公众号
2018/05/25 NodeJs
详解vue 自定义组件使用v-model 及探究其中原理
2019/10/11 Javascript
重置Redux的状态数据的方法实现
2019/11/18 Javascript
Javascript查看大图功能代码实现
2020/05/07 Javascript
聊聊vue 中的v-on参数问题
2021/01/29 Vue.js
[07:49]2014DOTA2国际邀请赛 Newbee夺冠后采访xiao8坦言奖金会上交
2014/07/23 DOTA
python中随机函数random用法实例
2015/04/30 Python
Python 文本文件内容批量抽取实例
2018/12/10 Python
DKNY品牌官网:纽约大都会时尚风格
2016/10/20 全球购物
美国一家主打母婴用品的团购网站:zulily
2017/09/19 全球购物
医学生职业生涯规划书范文
2014/03/13 职场文书
新闻专业毕业生英文求职信
2014/03/19 职场文书
捐款倡议书
2014/04/14 职场文书
ktv好的活动方案
2014/08/15 职场文书
推普周国旗下讲话稿
2014/09/21 职场文书
2015年教学工作总结
2015/04/02 职场文书
2015年法务工作总结范文
2015/05/23 职场文书
Python序列化与反序列化相关知识总结
2021/06/08 Python
Android中View.post和Handler.post的关系
2022/06/05 Java/Android
Python日志模块logging用法
2022/06/05 Python