#include <stdio.h>
#include "mysql.h"
#include <stdlib.h>
#include <string.h>
#include <strings.h>
char qbuf[128]={0};
int main(int argc,char **argv)
{
MYSQL mysql,*sock;
MYSQL_RES *res;//存储结果
MYSQL_ROW row;//存放一行数据
mysql_init(&mysql);
if(!(sock=mysql_real_connect(&mysql,"目标ip","账号","密码","数据库",0,0,0)))
perror("");
exit(1);
}
printf("connect success!\n");
sprintf(qbuf,"select * from test");
if(mysql_query(sock,qbuf))
{//执行语句
fprintf(stderr,"Query failed (%s)\n",mysql_error(&mysql));
exit(1);
}
//mysql_store_result()-->是把查询结果一次性取到客户端的离线数据集,当结果较大时耗内存。
if(!(res=mysql_store_result(sock))){
fprintf(stderr,"couldn't get result from %s\n",mysql_error(&mysql));
exit(1);
}
int t;
while((row=mysql_fetch_row(res)))
{//处理结果,可以返回列,返回行
//mysql_num_fields()-->返回集中列的数量
for(t=0;t<mysql_num_fields(res);t++)
{
printf("%s\t",row[t]);
}
printf("\n");
}
mysql_free_result(res);
mysql_close(&mysql);//close connect
return 0;
}
#include "mysql.h"
#include <stdlib.h>
#include <string.h>
#include <strings.h>
char qbuf[128]={0};
int main(int argc,char **argv)
{
MYSQL mysql,*sock;
MYSQL_RES *res;//存储结果
MYSQL_ROW row;//存放一行数据
mysql_init(&mysql);
if(!(sock=mysql_real_connect(&mysql,"目标ip","账号","密码","数据库",0,0,0)))
{//连接函数
fprintf(stderr,"failed connect!\n%s\n",mysql_error(&mysql));perror("");
exit(1);
}
printf("connect success!\n");
sprintf(qbuf,"select * from test");
if(mysql_query(sock,qbuf))
{//执行语句
fprintf(stderr,"Query failed (%s)\n",mysql_error(&mysql));
exit(1);
}
//mysql_store_result()-->是把查询结果一次性取到客户端的离线数据集,当结果较大时耗内存。
if(!(res=mysql_store_result(sock))){
fprintf(stderr,"couldn't get result from %s\n",mysql_error(&mysql));
exit(1);
}
int t;
while((row=mysql_fetch_row(res)))
{//处理结果,可以返回列,返回行
//mysql_num_fields()-->返回集中列的数量
for(t=0;t<mysql_num_fields(res);t++)
{
printf("%s\t",row[t]);
}
printf("\n");
}
mysql_free_result(res);
mysql_close(&mysql);//close connect
return 0;
}