欢迎您访问我爱IT技术网,今天小编为你分享的编程技术是:【SCO下用gcc编译调用mysql数据库的程序】,下面是详细的分享!
SCO下用gcc编译调用mysql数据库的程序
CC=gcc
LIB=-lcurses -lsocket -lmysqlclient -lm -lc -lnsl
all:gspser
gspser:get_data.o getfileargv.o
$(CC) -o gj get_data.o getfileargv.o $(LIB)
get_data.o:get_data.c
$(CC) -c get_data.c
getfileargv.o:getfileargv.c
$(CC) -c getfileargv.c
clean:
rm -f *.o
2.get_data.c文件
#include <stdio.h>
#include </usr/local/mysql/include/mysql.h>
#define DBCFG "./gsp.conf"
main()
{
char dbhost[32],dbuser[16],dbpasswd[16],db[16];
char query[256];
int count;
MYSQL * mysql;
MYSQL_RES *mysql_res;
MYSQL_ROW mysql_row;
my_ulonglong rows;
getfileargv(DBCFG,"DBHOST",dbhost);
getfileargv(DBCFG,"DBUSER",dbuser);
getfileargv(DBCFG,"DBPASSWD",dbpasswd);
getfileargv(DBCFG,"DATABASE",db);
if(!(mysql=mysql_init(NULL)))
{
rintf("mysql_init失败!");
mysql_close(mysql);
exit(0);
}
if(!mysql_real_connect(mysql,dbhost,dbuser,dbpasswd,db,0,NULL,0))
{
rintf("连接服务器失败,请联系系统管理人员!");
mysql_close(mysql);
exit(0);
}
trcpy(query,"select * from zuh where jgm=\"11110501\" order by zuh");
if(mysql_query(mysql,query))
{
rintf("mysql_query出错!");
mysql_close(mysql);
exit(0);
}
mysql_res=mysql_store_result(mysql);
rows=mysql_num_rows(mysql_res);
if(rows==0)
{
rintf("返回值为空");
mysql_free_result(mysql_res);
mysql_close(mysql);
exit(0);
}
for(count=0; count<rows; count++)
{
mysql_row=mysql_fetch_row(mysql_res);
rintf("社号:%s ",mysql_row[0]);
rintf("组号:%s ",mysql_row[1]);
rintf("组名:%s\n",mysql_row[2]);
}
mysql_free_result(mysql_res);
mysql_close(mysql);
}
3.getfileargv.c文件
#include <stdio.h>
int getfileargv(const char * filename,const char * argvname, char * retbuf)
{
FILE *fp;
char line[128];
char tempbuf[40];
trncpy(tempbuf,argvname,30);
tempbuf[39]=0;
if ((fp=fopen(filename,"r"))==NULL)
return -1;
trcat(tempbuf,"=");
while(fgets(line,120,fp))
{
if(line[0]=='#')
continue;
if (!strncmp(line,tempbuf,strlen(tempbuf)))
{
fclose(fp);
line[strlen(line)-1]=0;
trcpy(line,(char *)(strchr(line,'=')+1));
trcpy(retbuf,line);
return 0;
}
}
fclose(fp);
return -2;
}
以上所分享的是关于SCO下用gcc编译调用mysql数据库的程序,下面是编辑为你推荐的有价值的用户互动:
相关问题:linux gcc mysql 如何在C语言中使用嵌入式SQL编程...
答:最起码包含mysql.h 实例代码: #include #include #include "mysql.h" int main(int argc, char *argv[]) { MYSQL *conn_ptr; conn_ptr = mysql_init(NULL); if (!conn_ptr) { fprintf(stderr, "mysql_init failed\n"); return EXIT_FAILURE; } ... >>详细
相关问题:用C语言如何对MySQL数据库进行操作
答:有时为了性能,我们会直接用C语言来开发相关的模块,尤其在我们的web应用中,虽然PHP、JSP等脚本均提供了MySQL的接口,但是显然直接使用C语言具有更好的安全性和性能,Michael以前用PHP开发的多个项目中就使用了C语言编写的这类接口,然后再编译... >>详细
相关问题:如何在linux下安装mysql数据库并配置
答:如何在linux下安装mysql数据库并配置 关于本文 本文将以MySQL 5.0.51为例,以CentOS 5为平台,讲述MySQL数据库的安装和设置。 2. 关于MySQL MySQL是最流行的开源SQL数据库管理系统,它由MySQL AB开发、发布和支持。MySQL AB是一家由MySQL开发人... >>详细
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
