#include#includeint main() { MYSQL mysql; mysql_init(&mysql); if (!mysql_real_connect(&mysql,"localhost","user","passwd","database",0,NULL,0)) { printf("连接失败:%s\n",mysql_error(&mysql)); return -1; } if (mysql_query(&mysql,"SELECT * FROM table")) { printf("查询失败:%s\n",mysql_error(&mysql)); return -1; } MYSQL_RES *result = mysql_use_result(&mysql); MYSQL_ROW row; while ((row = mysql_fetch_row(result)) != NULL) { printf("%s %s %s\n",row[0],row[1],row[2]); } mysql_free_result(result); mysql_close(&mysql); return 0; }
上述代码中,mysql_real_connect()函数用于建立与MySQL数据库的连接,其中需要指定数据库服务器的地址、用户名、密码以及要连接的数据库名称。如果连接成功则返回MySQL连接句柄,否则打印出错误信息并返回-1。
mysql_query()函数用于执行SQL语句,其中参数为要执行的SQL语句字符串。如果执行成功返回0,否则打印出错误信息并返回-1。
mysql_use_result()函数用于获取查询结果,返回值为MYSQL_RES类型指针,可以通过mysql_fetch_row()函数遍历查询结果集中的每一行。
在获取每一行数据时,需要使用MYSQL_ROW类型变量来接收查询结果,通过row数组来访问每个字段的值。
最后通过mysql_free_result()函数释放查询结果所占用的资源,mysql_close()函数关闭数据库连接。