#include <mysql.h> //包含MySQL C API头文件 MYSQL mysql; //定义一个MySQL对象 mysql_init(&mysql); //初始化MySQL对象 mysql_real_connect(&mysql, "localhost", "root", "password", "database", 0, NULL, 0); //连接MySQL数据库 MYSQL_RES *result; //定义MYSQL_RES类型指针,用于指向查询结果 mysql_query(&mysql, "SELECT * FROM table"); //执行查询语句 result = mysql_store_result(&mysql); //存储查询结果 MYSQL_ROW row; //定义MYSQL_ROW类型指针,用于遍历查询结果的行 while ((row = mysql_fetch_row(result))) { //循环遍历查询结果的行 int id = atoi(row[0]); //将字符串类型的id转换为整数类型 double salary = atof(row[1]); //将字符串类型的salary转换为浮点数类型 char *name = row[2]; //获取字符串类型的name printf("%d %f %s\n", id, salary, name); //打印查询结果 } mysql_free_result(result); //释放查询结果 mysql_close(&mysql); //关闭MySQL连接
在上面的代码中,大家使用了atoi和atof函数将字符串类型的整数和浮点数转换为对应的数据类型。同时,大家通过MYSQL_ROW类型的指针遍历了查询结果的行,并使用printf函数将结果打印出来。
除了整数和浮点数,MySQL C API还支持其他数据类型的处理,例如日期时间。大家可以使用下面的函数将MySQL的日期时间类型转换为C语言中的time_t类型:
time_t timestamp = mysql_time_t(row[3]); //将MySQL的日期时间类型转换为C语言中的time_t类型
有了MySQL C API的支持,大家可以方便地读取和操作MySQL数据库中的各种数据类型。