
地 址:北京市丰台区66号
电 话:18069431671
网址:huaquantongstone.com
邮 箱:14218713@qq.com
要在C语言中(zhong)使用MySQL数据库,中添首先需要安装MySQL C API库,加数(shu)据的简易以(yi)下是实现在C语言中添加数据的简易实现步骤:(图片来源网络,侵删)
1、中添安装MySQL C API库

在Linux系统中,加数据的简易可以(yi)使用以下命令安装MySQL C API库:

sudo aptget install libmysqlclientdev
在(zai)Windows系统中,实现可以从MySQL官网下载并安装MySQL Connector/C。中添

2、加数据的简易包含头文件
在C语言源文件中,实现包含以下头文件:
#include <stdio.h>#include <stdlib.h>#include <mysql/mysql.h>
3、中添初始化MySQL连接
使用(yong)mysql_init()函数初始化MySQL连接,加数据的简易需(xu)要提供一个指向MYSQL结构的实现指针,以及一个指向错误信息的中添指针。
MYSQL *conn;MYSQL_RES *res;MYSQL_ROW row;char *server = "localhost";char *user = "root";char *password = "your_password"; // 替换为(wei)你的加数据的(de)简易MySQL密码char *database = "test"; // 替换为(wei)你要(yao)使用的数据(ju)库名(ming)int port = 3306; // MySQL服务器端口,默认为3306if (mysql_init(&conn) != NULL) { fprintf(stderr,实(shi)现 "%s", mysql_error(conn)); exit(EXIT_FAILURE);}4、连接到MySQL服务器
使用mysql_real_connect()函数连接到MySQL服务(wu)器,需要提供服务器地址、用户名、密码、数据库名和端口号。
if (mysql_real_connect(conn, server, user, password, database, port, NULL, 0) == NULL) { fprintf(stderr, "%s", mysql_error(conn)); mysql_close(conn); exit(EXIT_FAILURE);}5、执行SQL语句
使用mysql_query()函数执行SQL语句,要向名为students的表中插入(ru)一条(tiao)数据,可以执行以下SQL语句:
INSERT INTO students (name, age) VALUES ('张(zhang)三', 20);if (mysql_query(conn, "INSERT INTO students (name, age) VALUES ('张三', 20);") != NULL) { fprintf(stderr, "%s", mysql_error(conn)); mysql_close(conn); exit(EXIT_FAILURE);}6、处理查询结果(guo)(可选)
如(ru)果执行的是(shi)查询语句,可以使用mysql_store_result()和mysql_fetch_row()函数处理(li)查询结果,要获取刚刚(gang)插入的数据,可以执行以(yi)下操作:
if (mysql_query(conn, "SELECT * FROM students;") != NULL) { fprintf(stderr, "%s", mysql_error(conn)); mysql_close(conn); exit(EXIT_FAILURE);}res = mysql_store_result(conn); // 存储查询结果(guo)到res变量中row = mysql_fetch_row(res); // 获取查询结果(guo)的第一行数据(ju)到row变量中,返回NULL表示已经到达(da)结果集末尾while (row != NULL) { // 遍历查询结果集,打印每(mei)一行数据的名称和年龄字段值 printf("Name: %s, Age: %s", row[0], row[1]); row = mysql_fetch_row(res); // 获取下(xia)一行数据,直到到达结(jie)果集末尾(NULL)为止}7、关(guan)闭MySQL连接和释放资源
使用mysql_close()函数关闭MySQL连接,并释放相(xiang)关(guan)资源,不要忘记释放MYSQL结构体。
if (mysql_close(conn) != NULL) { fprintf(stderr, "%s", mysql_error(conn)); exit(EXIT_FAILURE);}free(conn); // 释放MYSQL结(jie)构体内存空间(可选)