Chinaunix首页 | 论坛 | 博客
  • 博客访问: 710481
  • 博文数量: 214
  • 博客积分: 5015
  • 博客等级: 大校
  • 技术积分: 2285
  • 用 户 组: 普通用户
  • 注册时间: 2006-06-18 17:02
文章分类

全部博文(214)

文章存档

2008年(43)

2007年(171)

我的朋友

分类:

2007-09-06 10:43:07

写一段访问mysql的代码非常的简单,可以从随mysql源码发布的代码包中截取。
 
 

#fileName=test.c
#include "stdio.h"
#include "mysql.h" //某些情况下需要将该头文件copy到目录下

main()
{
MYSQL *ssock;//有些变量或者函数不熟悉的话,可以在mysql.h中查,明白参数的意义

char execsql[500];

ssock=(MYSQL *)malloc(sizeof(MYSQL));
mysql_init(ssock)//在某些版本中,该初始化工作是不需要的,可观看mysql.H,以及read me

if(ssock==NULL)
{
 printf("init error!\n");
 exit(1);
 
}
//connect to selected db

ssock=mysql_real_connect(ssock,"localhost","username","password","dbname",0,NULL,0);
if (!ssock)
{
printf("cannot connect to the mysql_server \n");
exit(-1);
}
mysql_select_db(ssock,"test");
//exec my execsql string

sprintf(execsql,"create table girls (name char(10),age int)");
mysql_real_query(ssock,execsql,strlen(execsql));
mysql_close(ssock);
}

在Emacs中编辑完成保存,开始编译,可以采用makefile方式,但是作为学习,先从顺序编译开始。
gcc -c -I/usr/local/inlude/mysql test.c
gcc -o test test.o -L/usr/local/lib/mysql -lmysqlclient [-lm] [-lz]
后面附带的参数可选,毕竟在安装的环境中还是有很大的库函数存放位置差异的。

 

阅读(409) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~