C++ - VS2019配置MySQL数据库
一、配置 Visual Studio 连接 MySQL
1、确定 MySQL 安装目录下是否存在 include 和 lib 目录(include目录下包含C/C++连接MySQL的头文件,lib目录下包含所需要的库)
2、打开 VS2019,其它版本也行,然后新建一个空项目,在源文件目录下新建一个 .cpp 文件
3、右击项目名,点击属性打开属性页,点击VC++目录,在包含目录和库目录中将MySQL的include和lib目录的绝对路径包含进来
4、然后点击链接器,在附加依赖项下输入 libmysql.lib 就行
5、最后将MySQL安装目录的 lib 目录下的 libmysql.dll 拷贝到 C:\Windows\System32 目录下,至此环境配置完成!!!
补充:如果不把libmysql.dll 拷贝到 C:\Windows\System32 目录下编译时会报错,如下图:
二、测试连接 MySQL 数据库
1、cmd 下输入 services.msc,确保 mysql 服务已经启动
2、编译如下代码,连接的数据库名称,用户名和密码设定成自己的
#include <stdio.h>
#include <stdlib.h>
#include <mysql.h>
int main()
{
//固定不变的
MYSQL mysql; //一个数据库结构体
MYSQL_RES* res; //一个结果集结构体
MYSQL_ROW row; //char** 二维数据,存放一条条记录
//初始化数据库
mysql_init(&mysql);
//设置编码方式
mysql_options(&mysql, MYSQL_SET_CHARSET_NAME, "gbk");
//连接数据库 //ip地址 //用户名 //密码 //数据库名
if (mysql_real_connect(&mysql, "localhost", "root", "123456", "test", 3306, NULL, 0))
{
printf("数据库连接成功!\n");
}
else
{
printf("错误原因:%s\n", mysql_error(&mysql));
printf("数据库连接失败!\n");
exit(-1);
}
return 0;
}
运行结果:
相关报错问题
报错原因是:vs项目和msql位数不一致
当vs的工程项目加载了libmysql.lib报了无法解析的外部符号时,即:附加包含目录,附加依赖项都设置好之后,如过编译出现如下:
这时需要要把项目改成64位的 ,因为我的mysql就是64位的,所以要一致。
把项目改成64位的之后编译+运行: