c语言把mysql数据库语句和变量封装为一个语句
我有一个语句 sql = "insert into talbe_name values(name,age)" 其中name和age两个变量根据外面的输入来确定,有两种方法
1: 使用sprintf
#include <stdio.h> void main() { char name[] = "xiaotiange"; char age[] = "20"; char pre_sql[] = "insert into stu values('%s','%s')"; char sql[200]; sprintf(sql,pre_sql,name,age); printf("%s\n",sql); }
2: 使用strcat
#include <stdio.h> #include <string.h> void main2() { char name[] = "xiaotiange"; char age[] = "20"; char sql[200] = "insert into stu values("; strcat(sql,"'"); //需要把‘ ’还有, 等符号插进去 strcat(sql,name); strcat(sql,"',"); strcat(sql,age); strcat(sql,")"); printf("%s\n",sql); }
注意:
使用sprintf的时候,可以把age换为int类型,但是使用strcat的时候不可以使用int类型。