VS2019连接mysql8.0数据库的教程图文详解
1.首先准备好vs2019以及mysql数据库,两者都可以去官网下载,我们直接描述连接过程。
2.连接:
第一步:打开mysql的安装目录,我本地的安装目录如下:(注意是否有include和lib文件夹)
第二步:打开vs2019,新建一个空工程。
第三步:右击工程名,打开属性页:
第四步:打开vc++目录,在包含目录中,将mysql安装文件中的include文件的路径添加到这里:
第五步:还是在属性页上,打开c/c++,选择常规,和上一步一样,在附加包含目录中将mysql文件中的include文件路径添加进来:
第六步:还是在属性页上,点开链接器选项,点击常规,将mysql安装文件夹中的lib文件路径添加到附加库目录中:
第七步:还是在属性页的链接器中,点击第二项输入,将libmysql.lib文件加进来,注意,这里直接把libmysql.lib这个依赖名加进去进行,不要加路径。这个文件也在mysql安装文件夹中lib目录下:
第八步:查看属性页上方的平台,选择x64,x32可能会出错。
第九步:把mysql安装目录里的bin\libmysql.dll复制到c:\windows\system32下:
如果不进行这一步,运行程序的时候很有可能会报找不到libmysql.dll错误。
3.编写测试代码:
首先打开mysql数据库,我用本地已有的一个数据库表来测试:
测试代码:
?1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 | #include <stdio.h> #include "mysql.h" #include<iostream> using namespace std; void main() { mysql mysql; //一个数据库结构体 mysql_res* res; //一个结果集结构体 mysql_row row; // char ** 二维数组,存放一条条记录 //初始化数据库 mysql_init(&mysql); //设置编码方式 mysql_options(&mysql, mysql_set_charset_name, "gbk" ); //连接数据库 //判断如果连接失败就把连接失败的信息显示出来,我们好进行对应修改。 // mysql_real_connect参数:2.本地地址 3.你的mysql用户名 4.你的mysql密码 5.数据库名字 6.端口号 if (mysql_real_connect(&mysql, "localhost" , "root" , "root" , "luckysheep" , 3306, null , 0) == null ) { cout << (mysql_error(&mysql)); } //查询数据 mysql_query(&mysql, "select * from department" ); //获取结果集 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(); } |
注意修改自己mysql的用户名和密码。
输出结果:
记录:其实今天想给vs2010连接mysql,因为项目在vs2010进行的,想着连接数据库进行数据测试等。但是安装了一整天,一个错一个错的解决,但是到最后,还是失败了,#include <stdbool.h>显示错误。查了一圈说是c语言内置不支持布尔类型,通过引用stdbool.h头文件,让其支持布尔类型。 但vs2010不完全支持c99…stdbool.h是c99的…时间仓促,之后有时间在排查一下吧。。。。。
总结
到此这篇关于vs2019连接mysql8.0数据库的文章就介绍到这了,更多相关vs2019连接mysql8.0数据库内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!
原文链接:https://blog.csdn.net/weixin_44438749/article/details/106355358
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。