C语言连接mysql数据库详细步骤
文章目录
- 一、准备工作
- 1.环境配置
- 2.新建空项目
- 3.给新建项目配置mysql依赖文件及库
- 二、开始准备连接
- 1.新建源文件
- 2.写入头文件
- 3.增加主函数
- 三、从数据库获取数据
- 1.下面是mysql可视化工具(数据库里的数据)
- 2.继续增加代码获取数据
- 3.增加设置编码代码(具体位置看总体代码)
- 四、总体代码
- 参考:
一、准备工作
1.环境配置
- mysql数据库安装(我使用的是mysql5.6)
- C/C++编译器(我的是VS2017)
2.新建空项目
3.给新建项目配置mysql依赖文件及库
- 找到mysql安装目录
- 给项目配置包含目录及库目录
- 右击项目属性 -> 找到VC++ 目录(将对应路径配置)
确定即可
- 右击项目属性 -> 找到VC++ 目录(将对应路径配置)
二、开始准备连接
1.新建源文件
2.写入头文件
#include<stdio.h>
#include<stdlib.h>
#include <winsock.h> //网络编程头文件,mysql.h需要用到,在他前面
#include <mysql.h> //数据库头文件
#pragma comment (lib, "libmysql.lib") //链接库
3.增加主函数
int main()
{MYSQL *conn; //数据库连接句柄MYSQL_RES *res; //执行数据库语言结果MYSQL_ROW row; //存放一个数据记录char* server = "localhost";//本地连接char* user = "root";//char* password = "root";//mysql密码char* database = "jdbctest";//数据库名char* query = "select * from user";//需要查询的语句conn = mysql_init(NULL); //句柄初始化int t;if (!mysql_real_connect(conn, server, user, password, database, 3306, NULL, 0)) //判断数据库是否连接成功{printf("Error connecting to database:%s\n", mysql_error(conn));}else {printf("Connected...\n");}system("pause");return 0;
}
如果提示报错:
打开项目属性 ->C/C++ ->语言 -> 符合模式改为否
打开项目属性 ->C/C++ ->代码生成 -> 安全检查 ->关闭
- 可以编译运行
- 可以连接成功
三、从数据库获取数据
1.下面是mysql可视化工具(数据库里的数据)
2.继续增加代码获取数据
if (mysql_query(conn, query)){printf("Error making query:%s\n", mysql_error(conn));}else {printf("Query made...\n");res = mysql_use_result(conn); //获取结果if (res){while ((row = mysql_fetch_row(res)) != NULL){//printf("num=%d\n",mysql_num_fields(res));//列数for (t = 0; t < mysql_num_fields(res); t++)printf("%8s ", row[t]);printf("\n");}}mysql_free_result(res);}mysql_close(conn); //断开数据库
- 编译运行:
- 可以看到中文会出现乱码
3.增加设置编码代码(具体位置看总体代码)
//字符编码,解决乱码if (!mysql_set_character_set(conn, "gbk")){printf("New client character set: %s\n",mysql_character_set_name(conn));}
- 编译运行
- 成功
四、总体代码
#include<stdio.h>
#include<stdlib.h>
#include <winsock.h>
#include <mysql.h>
#pragma comment (lib, "libmysql.lib")int main()
{MYSQL *conn; //数据库连接句柄MYSQL_RES *res; //执行数据库语言结果MYSQL_ROW row; //存放一个数据记录char* server = "localhost";//本地连接char* user = "root";//char* password = "root";//mysql密码char* database = "jdbctest";//数据库名char* query = "select * from user";//需要查询的语句conn = mysql_init(NULL); //句柄初始化int t;if (!mysql_real_connect(conn, server, user, password, database, 3306, NULL, 0)) //判断是否连接成功{printf("Error connecting to database:%s\n", mysql_error(conn));}else {printf("Connected...\n");}//字符编码,解决乱码if (!mysql_set_character_set(conn, "gbk")){printf("New client character set: %s\n",mysql_character_set_name(conn));}if (mysql_query(conn, query)){printf("Error making query:%s\n", mysql_error(conn));}else {printf("Query made...\n");res = mysql_use_result(conn); //获取结果if (res){while ((row = mysql_fetch_row(res)) != NULL){//printf("num=%d\n",mysql_num_fields(res));//列数for (t = 0; t < mysql_num_fields(res); t++)printf("%8s ", row[t]);printf("\n");}}mysql_free_result(res);}mysql_close(conn); //断开数据库system("pause");return 0;
}
参考:
- https://blog.csdn.net/u011633428/article/details/86022135
- https://blog.csdn.net/qq_18297675/article/details/52239881
- https://blog.csdn.net/qq_21997625/article/details/75059616?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-5.pc_relevant_is_cache&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-5.pc_relevant_is_cache
C语言连接mysql数据库详细步骤相关推荐
- PowerDesigner 连接MySQL数据库详细步骤
PowerDesigner 连接MySQL数据库详细步骤 简介 有的时候我们想把数据表结构可视化,想知道表中有哪些字段,表与表之间的关联关系,这个时候我们可以使用PowerDesigner工具,将表转 ...
- 水晶报表 mysql_水晶报表CrystalReport2008使用JDBC连接MySQL数据库-详细步骤
水晶报表CrystalReport2008使用JDBC连接MySQL数据库-详细步骤 一:前期准备工作 lCrystal Report 2008 lJDBC相关jar包 ---mysql-connec ...
- U3D连接MySQL数据库详细步骤解析
本文转自博主Hozshan的文章 "Unity3D 学习笔记(四) Unity连接MySQL数据库",他对各个步骤都做了详细的介绍. 文章链接:https://blog.csdn. ...
- myeclipse连接mysql怎么调用_myeclipse连接mysql数据库详细步骤
第一步 打开Database windows-prefenrence-showview-DBbrowser ,此时会在工具底部有个DBbrowser ,选中它,再它所控制的页面的任意位置 右击new ...
- C#连接MySQL数据库详细步骤
C#连接MySQL数据库 连接之前的准备 要完成的任务 连接MySql数据库 写我们的代码 运行出错: 程序效果: 本人的问题,用的是vs2010,连接数据库就没有那么方便了,下面是具体连接数据库的过 ...
- Java连接Mysql数据库详细步骤(超级详细)
首先,我们需要下载驱动包, 驱动包我已放入下面网盘里了 链接:https://pan.baidu.com/s/1AeYoB_KpNgfnBd4tRr-ang 提取码:rrle 适用连接8.0及以上的 ...
- C语言连接MySQL数据库编程教程:超详细
** C语言连接MySQL数据库编程教程 ** 一.下载安装mysql.h库文件 我们使用的编译器一般为VC6.0或者VS,默认的都是32位编译器,所以我们下载的库文件也直接下载32位的就可以.下面附 ...
- C语言连接mysql数据库(一)
编程 IDE:Visual Studio (其他的本人没有试过 QWQ) 前提:已经安装 mysql,并且成功连接 23/5/24 更新:一个基于 c 语言.mysql 的小型示例学生管理系统 资源路 ...
- mysql用c语言连接驱动程序,C语言连接MySql数据库
操作系统:Windows7(32位) 编译软件:Code::Blocks 10.05 数 据 库:mysql-5.1.62-win32 数据库内的数据: 测试代码: #include #include ...
最新文章
- C#网页数据采集(一)HtmlAgilityPack
- Servlet的部分request请求处理
- MATLAB-向量相关计算
- 【年度开源、工具合集】牛津计划,DMTK,Graph Engine…提高你的工作效率!
- DCMTK:DcmAttributeFilter类的测试程序
- Gradle在大型Java项目上的应用
- 【图片识别】java 图片文字识别 ocr (转)
- java简单的事务处理_JAVA之JDBC简单事务处理
- 斐波那契数(动态规划和递归)
- OKHttp源码解析(1)----整体流程
- vi/vim编辑器常用命令
- 电脑版微信发消息转圈圈
- Keil 保护视力背景颜色设置
- 十行以内,你写过哪些比较酷的 Matlab 代码?
- 黑客游戏Hacknet下载(游戏分享一)
- 【冬季】寒冬已至,让这些公众号温暖你的冬天
- Debian搭建PPTP
- 软件测试周刊(第59期):觉得自己生活的很好吗?为什么视而不见?
- phpstudy宝塔_宝塔和phpstudy的区别
- 招投标阶段的内部控制要点
热门文章
- 我一直惊讶于人们的创造力--转自南方周末
- 【大数据】政务大数据体系建设内容
- java 16进制字符串转base64_16进制字符串,byte[] ,base64三者之间的转换
- libsodium引用报错FileNotFoundError: [Errno 2] No such file or directory: b‘liblibsodium.a‘
- jquery 逗号分割截取字符串_jQuery 字符串截取与数组截取
- Solaris/Linux 命令手册
- 【数论】质数筛选法(埃拉托色尼筛法及线性筛法)
- utils系列 python将jp2图像格式转为jpg可读格式
- 科林明伦杯哈尔滨理工大学第六届程序设计团队赛(12.10)
- matlab建模总结,MATLAB 数学建模方法与实践(第 3 版)