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 角色(role)功能介绍
Apr 24 MySQL
my.ini优化mysql数据库性能的十个参数(推荐)
May 26 MySQL
Mysql 如何查询时间段交集
Jun 08 MySQL
MySQL8.0.18配置多主一从
Jun 21 MySQL
解决mysql:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO/YES)
Jun 26 MySQL
mysql的数据压缩性能对比详情
Nov 07 MySQL
mysql 获取时间方式
Mar 20 MySQL
MySQL中rank() over、dense_rank() over、row_number() over用法介绍
Mar 23 MySQL
MySQL提取JSON字段数据实现查询
Apr 22 MySQL
MySQL的prepare使用以及遇到的bug
May 11 MySQL
MySQL事务的ACID特性以及并发问题方案
Jul 15 MySQL
mysql序号rownum行号实现方式
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表单递交控件名称含有点号(.)会被转化为下划线(_)的处理方法
2013/01/06 PHP
php防止sql注入简单分析
2015/03/18 PHP
php读取txt文件并将数据插入到数据库
2016/02/23 PHP
学习thinkphp5.0验证类使用方法
2017/11/16 PHP
如何确保JavaScript的执行顺序 之jQuery.html深度分析
2011/03/03 Javascript
jquery选择器的选择使用及性能介绍
2013/01/16 Javascript
用JS做的简单的可折叠的两级树形菜单
2013/09/21 Javascript
使用jquery实现IE下按backspace相当于返回操作
2014/03/18 Javascript
javascript设置连续两次点击按钮时间间隔的方法
2014/10/28 Javascript
深入理解JavaScript系列(47):对象创建模式(上篇)
2015/03/04 Javascript
基于jquery实现鼠标左右拖动滑块滑动附源码下载
2015/12/23 Javascript
jQuery利用sort对DOM元素进行排序操作
2016/11/07 Javascript
JS闭包与延迟求值用法示例
2016/12/22 Javascript
简述vue中的config配置
2018/01/23 Javascript
JQuery Ajax动态加载Table数据的实例讲解
2018/08/09 jQuery
详解vue 路由跳转四种方式 (带参数)
2019/04/28 Javascript
微信小程序class封装http代码实例
2019/08/24 Javascript
Python中还原JavaScript的escape函数编码后字符串的方法
2014/08/22 Python
解决Python中由于logging模块误用导致的内存泄露
2015/04/23 Python
Python爬取当当、京东、亚马逊图书信息代码实例
2017/12/09 Python
python爬取个性签名的方法
2018/06/17 Python
win10下python3.5.2和tensorflow安装环境搭建教程
2018/09/19 Python
Python简易计算器制作方法代码详解
2019/10/31 Python
Python进程池Pool应用实例分析
2019/11/27 Python
Python Selenium自动化获取页面信息的方法
2020/08/31 Python
Html5页面在微信端的分享的实现方法
2018/08/30 HTML / CSS
西班牙最大的婴儿用品网上商店:Bebitus
2019/05/30 全球购物
Brother加拿大官网:打印机、贴标机、缝纫机
2019/10/09 全球购物
100%羊绒:NakedCashmere
2020/08/26 全球购物
职业技术学校毕业生推荐信
2013/12/03 职场文书
《理想》教学反思
2014/02/17 职场文书
导师工作推荐信范文
2014/05/17 职场文书
学校安全教育月活动总结
2014/07/07 职场文书
三八妇女节慰问信
2015/02/14 职场文书
2019年作为一名实习生的述职报告
2019/09/29 职场文书
mysql 生成连续日期及变量赋值
2022/03/20 MySQL