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