小编给大家分享一下VS2019连接MySQL数据库的常见问题有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
下午开始配置各种环境,想着VS2019可以配合MySQL一起使用。中间出了不少错误,晚上九点左右配置成功如下图所示:
接下来说说具体步骤:
(1)首先准备好VS2019和MySQL的软件,各自官网都有,这里不再赘述;
(2)找到MySQL的安装目录,如图,找到这两个文件夹。
(3)新建一个工程后再新建一个main.cpp文件,为下面的配置环境做准备。
(4)打开项目属性,点击VC++目录,在包含目录中,将MySQL安装目录中的include文件路径添加到这里,如下图所示:
(5)在属性页上,打开C/C++,选择常规,步骤同上,在附加包含目录中将MySQL文件中的include文件路径添加进去;
(6)继续在属性页上,点开链接器选项,点击常规,将MySQL安装目录下的lib路径拷贝到附加库目录中;
(7)继续在属性页的链接器中,点击输入选项,将libmysql.lib文件加进去,注意的是,只需要拷贝libmysql.lib这个名称即可,不需要添加路径。同样,这文件也在mydql安装文件夹中lib目录下:
(8)查看属性页上方的平台,选择x64,x32可能会出错
(9)把MySQL安装目录下的bin\libmysql.dll复制到c:\windows\system32下:
这部安装完成后,可以编写测试代码了。测试代码如下:
#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的端口号3306if (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]);//打印IDprintf("%s ", row[1]);//打印IDcout << endl;}//释放结果集mysql_free_result(res);//关闭数据库mysql_close(&mysql);//停留等待getchar();system("pause");return 0;}
运行过程中,如果出现了如下图所示的错误,则需要进行排查配置环境变量的问题。
项目右键属性,检查一下VC++目录配置;
2、检查链接器中的输入选项
(3)我把这“libmysql.dll 和 libmysql.lib”文件放在项目里的.cpp文件夹下。
这三步可以检查具体大部分的问题。
一定要注意的是MySQL的参数不要写错,写错有时会出现如下Access denied for user 'ODBC'@'localhost' (using password: NO),可以去mysql的bin目录下输入命令:
mysql -u root -p,检查数据库用户名,密码啥的是否错误。正确输入如下图所示:
以上是“VS2019连接MySQL数据库的常见问题有哪些”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网行业资讯频道!