c 读取mysql_c语言读取Mysql

最近一段时间学习linux下的C开发,呵呵,写了一个测试程序,作用是读取Mysql的数据,然后显示出来。经测试成功……

#include

#include

#include

#define DB_SERVER ""

#define DB_NAME "test"

#define DB_USER "root"

#define DB_PWD  ""

static MYSQL *db_handel,mysql;

static MYSQL_ROW row;

static int query_error;

MYSQL_RES *query_test(char *sql);

int query_show(MYSQL_RES *result);

int main(int argc,char *argv[])

{

MYSQL_RES * results;

results=query_test("select * from test");//获取记录

query_show(results);//显示记录

return 0;

}

//查询记录

MYSQL_RES *query_test(char *sql)

{

static MYSQL_RES *query_result;

printf("%s\n",sql);

mysql_init(&mysql);

db_handel=mysql_real_connect(&mysql,DB_SERVER,DB_USER,DB_PWD,DB_NAME,0,0,0);//打开数据库连接

if(db_handel==NULL)//错误处理

{

printf(mysql_error(&mysql));

return NULL;

}

query_error=mysql_query(db_handel,sql);//查询

if(query_error!=0)//错误处理

{

printf(mysql_error(db_handel));

return NULL;

}

query_result=mysql_store_result(db_handel);获取记录

mysql_close(db_handel);//关闭数据库

return query_result;//返回记录

}

//显示记录

int query_show(MYSQL_RES *result)

{

unsigned int i,num_fields;

MYSQL_FIELD *fileds;

num_fields=mysql_num_fields(result);//获取字段数

fileds=mysql_fetch_fields(result);//获取字段数组

while((row=mysql_fetch_row(result))!=NULL)//循环显示

{

for(i=0;i

{

printf("%s: %s \n",fileds[i].name,row[i]?row[i]:"NULL");

}

}

return 0;

}

以下是MakeFile文件内容

CC=gcc

#LDLIBS=`gtk-config --libs --cflags`

LDLIBS=-L /usr/lib/mysql -I /usr/include/mysql -l mysqlclient

CFLAGS=-Wall -g`gtk-config --cflags`

window:window.c

$(CC) $(LDLIBS) window.c -o window

#window.o:window.c

#       $(CC) $(LDLIBS) -c window.c

clean:

rm -f window

rm -f *.o

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值