首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >【MySQL】C or C++连接MySQL数据库

【MySQL】C or C++连接MySQL数据库

作者头像
半生瓜的blog
发布2023-05-13 13:42:01
发布2023-05-13 13:42:01
4.1K0
举报
文章被收录于专栏:半生瓜のblog半生瓜のblog

VS2019链接

1.找到这个文件夹

拿到这两个路径,库文件路径,和头文件路径

C:\Program Files\MySQL\MySQL Server 8.0\lib

C:\Program Files\MySQL\MySQL Server 8.0\include

2.打开vs2019

新建项目,解决方案改成x64。打开项目属性。

将头文件目录放到这里面。

3.添加库文件路径到库目录

4.将mysql安装文件夹中lib目录中的libmysql.lib文件添加到依赖项中。

5.把mysql安装目录中lib文件夹中的libmysql.dll文件复制到c:\windows\system32下

6.编写代码开始连接

示例

代码语言:javascript
复制
#include<stdio.h>
#include<mysql.h>
int main(void)
{
	MYSQL mysql;//数据库句柄
	MYSQL_RES* res;//查询结果集
	MYSQL_ROW row;//记录结构体
	//初始化数据库
	mysql_init(&mysql);
	//设置字符编码
	mysql_options(&mysql, MYSQL_SET_CHARSET_NAME, "gbk");
	//连接数据库
	if (mysql_real_connect(&mysql, "127.0.0.1", "root", "PASSWORD", "temp5", 3306, NULL, 0) == NULL)
	{
		printf("错误原因:%s\n", mysql_error(&mysql));
		printf("连接失败!\n");
		exit(-1);
	}
	//查询数据
	int ret = mysql_query(&mysql, "select * from student");
	printf("ret:%d\n", ret);
	//获取结果集
	res = mysql_store_result(&mysql);
	//给ROW赋值,判断ROW是否为空,不为空就打印数据
	while (row = mysql_fetch_row(res))
	{
		printf("%s ", row[0]);//ID
		printf("%s ", row[1]);//姓名
		printf("%s ", row[2]);//班级
		printf("%s \n", row[3]);//性别
	}
	//释放结果集
	mysql_free_result(res);
	//关闭数据库
	mysql_close(&mysql);
	return 0;
}

小补充:hexo文章标题不能包括[]


本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-12-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档