C_程序访问mysql数据库服务

基本原理

1: mysql服务器提供了服务协议,客户端遵守它的协议给他发送数据;
2: mysql有很多针对不同开发语言的 实现了和服务器通讯的客户端库;
3: 开发人员使用这些遵守mysql协议的库与mysql进行数据通讯;
4: 课程使用: mysql-connector-c


搭建mysql开发环境

1: 创建项目;
这里写图片描述
2:下载 mysql-connector-c 库与头文件;
https://dev.mysql.com/downloads/connector/c/6.1.html
这里写图片描述

64位为例 (32位兼容64位)
这里写图片描述
3: 配置好mysql的开发环境:
1>头文件搜索路径;
这里写图片描述

把库文件的.dll文件放到bin文件夹
这里写图片描述

把头文件和库文件放到项目的pro.win32->mysql_connector文件夹

这里写图片描述

打开项目,属性–》添加头文件目录
这里写图片描述

这里写图片描述

2>库文件搜索路径
这里写图片描述

这里写图片描述
4: 配置好win socket环境WSAStartup/WSACleanup

这里写图片描述
5: 运行时用的.dll文件;

这里写图片描述


mysql 连接

建立连接就像我们使用工具一样例如heidiSQL工具一样的客户端
这里写图片描述

1: MYSQL* pConn = mysql_init(NULL); 创建一个mysql操作上下文;

这里写图片描述
2: 连接到服务器:
mysql_real_connect(pConn, “127.0.0.1”, “root”, “123456”, “user_center”, 3306, NULL, 0)
这里写图片描述
3: 配置客户端的字符编码的环境:
mysql_query(pConn, “set names gbk”);
客户端输入是什么编码 数据库会转换成它自己的编码;
当数据回给客户端的时候,也会将数据库编码指定为客户端的编码;

这里写图片描述
4: mysql_close(pConn);

这里写图片描述


mysql sql 操作

1: mysql_query, 命令执行函数, MYSQL 链接对象, 后面跟sql语句字符串;
这里写图片描述
这里写图片描述

如果有错误:将会打印出来;
这里写图片描述

修改一条记录
这里写图片描述
2: 如果没有数据返回的指令如update, insert into, delete
mysql_affected_rows(pConn)处理受影响的记录数目;

客户端增加、修改、删除都会显示受影响行数
这里写图片描述
这里写图片描述

3: 如果执行有错误,可以返回错误信息 mysql_error(pConn);

删除
这里写图片描述

4: 如果指令的命令是有返回结果的,比如select
MYSQL_RES *result = mysql_store_result(pConn)
MYSQL_ROW row;
while (row = mysql_fetch_row(result)) {
printf(“%s: %s %s\n”, row[0], row[1], row[2]); // 每个字段
}

查询
这里写图片描述


code

猜你喜欢

转载自blog.csdn.net/qq_36482772/article/details/80379722