暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

VS2019连接mysql8.0数据库教程详解

ShyZ 2021-05-26
394

1.首先准备好VS2019以及mysql数据库,两者都可以去官网下载。

(1)后台回复mysql获取MySQL8.0安装包。

安装教程:https://www.cnblogs.com/2020javamianshibaodian/p/mysql8020anzhuangjiaocheng.html

(2)vs2019详细安装教程:https://blog.csdn.net/promsing/article/details/106441787

下面直接描述连接过程。

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数据库,我用本地已有的一个数据库表来测试:

测试代码:

#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", "192168", "addressbook", 3306, NULL, 0) == NULL) {
        cout << (mysql_error(&mysql));
    }
    //查询数据
    mysql_query(&mysql, "SELECT * from addressbooks");
    //获取结果集
    res = mysql_store_result(&mysql);
    //显示数据
    //给ROW赋值,判断ROW是否为空,不为空就打印数据。
    while (row = mysql_fetch_row(res))
    {
        printf("%s ", row[0]);//打印姓名
        printf("%s ", row[1]);//打印群组
        printf("%s ", row[2]);//打印联系方式
        cout << endl;
    }
    //释放结果集
    mysql_free_result(res);
    //关闭数据库
    mysql_close(&mysql);
    //停留等待
    getchar();
}
注意修改自己mysql的用户名和密码。


输出结果:


参考:https://www.jb51.net/article/187500.htm

文章转载自ShyZ,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论