小弟现在可以读出表中的所有数据(可以实现select * from xxx)
但我现在想把某一列数据读出来,用mysql_fetch_field函数搞不出来(我也不知道是不是用这函数)大神们帮忙看下 下面是一段代码。。大神帮忙改下。。或帮忙写个小函数吧。。  while(field = mysql_fetch_field(res))  
      {  
          
         for(t=0;t<mysql_num_rows(res);t++)  
          {  
 printf("%s  ",field->name); 
  
          }  
        
          count ++;
      }  

解决方案 »

  1.   


    #include "stdafx.h"   
    #include <windows.h>   
    #include <winsock2.h>   
    #include <mysql.h>
      
    //忽略LIBCMT.lib, MSVCRTD.lib这些库,不然链接时会报lnk2005错误   
    #pragma comment(linker,"/nodefaultlib:LIBCMT.lib")   
    #pragma comment(linker,"/nodefaultlib:MSVCRTD.lib")   
      
    /*用mysqlclient.lib,不要用libmysql.lib,要不你要多带一个libmysql.dll 
    静态库有两个,一个是debug版的,一个是release版的,要注意 
    */  
    //#if defined _DEBUG   
    //#pragma comment(lib, "mysqlclient_debug.lib")    
    //#else   
    #pragma comment(lib,"bufferoverflowU.lib") 
    #pragma comment(lib, "libmysql.lib")
    //#endif   
      
    #pragma comment(lib, "wsock32.lib")   
    #pragma comment(lib, "Advapi32.lib")  
      
    int main(int argc, char* argv[])  
    {  
        MYSQL* mysql = NULL;  
        mysql = mysql_init(mysql);  
      
        MYSQL_RES* res;  
        MYSQL_ROW record;  
      
        mysql_real_connect(mysql, "127.0.0.1", "root","xxx", "test", 3306, NULL, NULL); 
        mysql_query(mysql, "set names gbk;");   
        mysql_query(mysql, "select * from a");  
        res = mysql_store_result(mysql);  
        while((record=mysql_fetch_row(res)))  
        {  
            printf("id=%s,name=%s\r\n", record[0], record[1]);
        }  
        mysql_free_result(res);  
        mysql_close(mysql);  
      
        return 0;     
    }  
      

  2.   

    你都用windows了
    为什么不用ODBC驱动啊?