mysql api编程(四) 查询

来源:互联网 发布:mac os sierra下载 编辑:程序博客网 时间:2024/05/29 19:37

1. 此时我的数据库date下面有一张sub数据表;该表的详细内容如下:

这里写图片描述

2. 现在通过api编程来实现在终端打印出该sub表中的详细内容;

/************************************************************************* * File Name: search.c * Author:    The answer * Function:  Other         * Mail:      2412799512@qq.com  * Created Time: 2017年06月30日 星期五 20时14分10秒 ************************************************************************/#include<stdio.h>#include<errno.h>#include<mysql.h>#include<stdlib.h>#include<string.h>int main(int argc,char **argv){    /* 初始化mysql句柄 */    MYSQL *mysql = mysql_init(NULL);    int i;    /* 连接mysql数据库 */    mysql = mysql_real_connect(mysql,"127.0.0.1","root","lxg","date",3306,NULL,0);    if(NULL == mysql)    {        perror("mysql_real_connect");        return -1;    }    /* 设置字符集 */    int ret = mysql_query(mysql,"set names utf8");    if(ret != 0)    {        perror("mysql_query");        return -1;    }    /* 执行查询语句 */    ret = mysql_query(mysql,"select *from sub");    if(ret != 0)    {        perror("mysql_query1\n");        return -1;    }    /* 检索结果集 */    MYSQL_RES *result = mysql_store_result(mysql);    /* 获取结果集中的字段数 */    unsigned int count = mysql_num_fields(result);    /* 获取表头的字段名 */    for(i=0;i<count;++i)    {        MYSQL_FIELD *field = mysql_fetch_field(result);        printf("%s\t",field->name);    }    putchar('\n');    /* 获取结果集中的行的数据 */    MYSQL_ROW row;    while(row = mysql_fetch_row(result))    {        for(i=0;i<count;++i)        {            printf("%s\t",row[i]);        }        printf("\n");    }    /* 释放结果集 */    mysql_free_result(result);    /* 关闭mysql连接 */    mysql_close(mysql);    return 0;}

3.实现结构:

这里写图片描述

原创粉丝点击