mysql c API 存储过程

/**************************************************************************
*****Programm Name:mysql.cpp
*****Programmer   :Li
*****Function     :mysql数据库存储过程简单示例
*****Project      :Crawler.src
****************************************************************************/

/***************************************************************************
***#mysql 存储过程 包括创建、删除、插入、修改 等操作
***CREATE TABLE urlindex(id INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
***host VARCHAR(50) NOT NULL,DNS VARCHAR(50) NOT NULL)
***file name :mysql.txt
*****************************************************************************/

// g++ -g mysql.cpp -o mysql -I/usr/include/mysql -L/usr/lib/mysql -lmysqlclient -lz


#include<iostream>

#ifdef __cplusplus
extern "C"{
#endif

#include<mysql.h>
#include<string.h>
#include<stdio.h>
#include<string>


#define SQLCONF  "/root/wangxin/mysql.txt"
#ifdef __cplusplus
}
#endif


int main(void)
{
 MYSQL mysql;  //MYSQL *mysql;
 char table[255];
 char *p;
 FILE *f;
 
 memset(table,'0',sizeof(table));
 mysql_init(&mysql);
 #ifndef DEBUG
  printf("1111/n");
  #endif
 
  if(!(mysql_real_connect(&mysql,"localhost","root","songjun","indexdb",0,NULL,0)))
  {
    fprintf(stderr,"Error in connection:%s,%s/n",mysql_error(&mysql),__FUNCTION__);
    exit(1);
  }
  #ifdef DEBUG
 printf("2222/n");
 #endif
 
 if((f=fopen(SQLCONF,"r"))==NULL)
 {
  fprintf(stderr,"Can t open %s/n",SQLCONF);
  return 0;
 }
 #ifdef DEBUG
 printf("3333/n");
 #endif
 
 while(fgets(table,sizeof(table),f))
 {
  p=table;
  printf("%s/n",p);
  while(isspace((int)*p))
      p++;
    
  if(!strncmp(p,"#",1))
    continue;
   else
    break;
  }
  #ifdef DEBUG
  printf("%s/n",table);
  #endif
 
  int ret=mysql_real_query(&mysql,table,strlen(table));
  
  if(ret==0)
    printf("ok");
  else
    printf("error");
}
 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值