mysql.h
#include<stdio.h>
#include<mysql.h>
struct Sql
{
MYSQL mysql;
MYSQL_RES *res;
MYSQL_ROW *row;
int connect;
int select;
int flag;
}Sql;
void Mysql_init(struct Sql *mysql);
void Mysql_destroy(struct Sql *mysql);
void Mysql_select(struct Sql *mysql,char *query);
void Mysql_add(struct Sql *mysql,const char * value);
void Mysql_del(struct Sql *mysql,const char * value);
void Mysql_update(struct Sql *mysql,const char * username,const char* passwd);
mysql.c
#include<string.h>
#include"mysql.h"
#define True 1
#define Fault 0
void Mysql_init(struct Sql *mysql)
{
mysql_init(&mysql->mysql);
if(!mysql_real_connect(&mysql->mysql,"localhost","root","mohican123.","login",0,NULL,0))
{
mysql->connect = Fault;
printf("Failed\n");
}
else
{
mysql->connect = True;
printf("OK\n");
}
}
void Mysql_select(struct Sql *mysql,char *query)
{
mysql->select = mysql_real_query(&mysql->mysql,query,(unsigned int)strlen(query));
int t = 0;
if(mysql->select)
{
printf("select failed\n");
}
else
{
printf("select sucessful\n");
mysql->res = mysql_store_result(&mysql->mysql);
while(mysql->row = mysql_fetch_row(mysql->res))
{
for(t = 0;t < mysql_num_fields(mysql->res);t++)
{
printf("%s\t",mysql->row[t]);
}
printf("\n");
}
}
}
void Mysql_add(struct Sql *mysql,const char * value)
{
char template_h[128] = "insert into login(username,userpasswd,id) value (";
const char * template_f = ")";
strcat(template_h,value);
strcat(template_h,template_f);
mysql->flag = mysql_real_query(&mysql->mysql,template_h,(unsigned int)strlen(template_h));
if(mysql->flag)
{
printf("add sucess!\n");
}
else
{
printf("add failure!\n");
}
}
void Mysql_del(struct Sql *mysql,const char * value)
{
char template_h[128] = "delete from login where username=";
strcat(template_h,value);
mysql->flag = mysql_real_query(&mysql->mysql,template_h,(unsigned int)strlen(template_h));
if(mysql->flag)
{
printf("delete sucess!\n");
}
else
{
printf("delete failure!\n");
}
}
void Mysql_update(struct Sql *mysql,const char * username,const char *passwd)
{
char template_h[128] = "update login set userpasswd=";
strcat(template_h,passwd);
const char *template_f = "where username ="
strcat(template_h,template_f);
strcat(template_h,username);
mysql->flag = mysql_real_query(&mysql->mysql,template_h,(unsigned int)strlen(template_h));
if(mysql->flag)
{
printf("update success\n");
}
else
{
printf("update failure!\n");
}
}
void Mysql_destroy(struct Sql *mysql)
{
mysql_close(&mysql->mysql);
}
int main()
{
static struct Sql mysql;
char * value = "'root','passwd',0";
char * id = "'111'";
char * username = "'root'";
char * passwd = "'123456'";
Mysql_init(&mysql);
Mysql_select(&mysql,"select * from login");
Mysql_add(&mysql,value);
Mysql_select(&mysql,"select * from login");
Mysql_del(&mysql,id);
Mysql_select(&mysql,"select * from login");
Mysql_update(&mysql,username,passwd);
Mysql_select(&mysql,"select * from login");
Mysql_destroy(&mysql);
}
源碼
結果