#include <mysql/mysql.h> int main() { MYSQL* conn; MYSQL_RES* res; MYSQL_ROW row; char *server = "localhost"; char *user = "root"; char *password = "password"; char *database = "test"; char query[200]; conn = mysql_init(NULL); if(!mysql_real_connect(conn, server, user, password, database, 0, NULL, 0)) { fprintf(stderr, "%s\n", mysql_error(conn)); exit(1); } sprintf(query, "SELECT * FROM users"); mysql_query(conn, query); res = mysql_use_result(conn); while((row = mysql_fetch_row(res))) { printf("Name: %s, Age: %s\n", row[0], row[1]); } mysql_free_result(res); mysql_close(conn); return 0; }
其中,mysql_init()函数用于初始化一个MYSQL结构体指针;mysql_real_connect()函数用于连接数据库,需要传入参数数据库所在服务器地址、用户名、密码、数据库名等信息;mysql_query()函数用于执行SQL查询语句;mysql_use_result()函数用于在执行查询语句成功后获取查询结果;mysql_fetch_row()函数用于从查询结果中提取每一行数据;mysql_free_result()函数用于释放查询结果内存;mysql_close()函数用于关闭数据库连接。
除此之外,还有许多其他的函数可用于实现MySQL数据库的各种操作,比如mysql_real_query()函数用于处理任意SQL语句,包括修改数据的操作;mysql_store_result()函数用于将查询结果保存在客户端的内存中,开发者可随时访问结果。
总之,在C语言中实现MySQL数据库操作需要使用MySQL C API,开发者可以根据自己的需求选择不同的函数并灵活运用。