巧用sprintf()构造mysql语句

来源:互联网 发布:java long保留两位小数 编辑:程序博客网 时间:2024/04/30 07:14

接我上一篇博客,在c中调用mysql,要用到mysql_query()函数来执行mysql语句,在调用这个函数之前,你需要先构造好相应的mysql语句.譬如,要给表格中加入数据,需要用到

INSERT INTO 表的名字(列名a,列名b,列名c) VALUES(值1,值2,值3);

其中的值1.2.3若是字符串就会遇到一个很坑爹的地方,字符串需要用”引用起来,一开始的想法是用大量的strcat来一步步构造相应的语句,这样做效率很不高,而且很麻烦,所以得需要一个新的解决方案.
sprintf()便出现在我脑海了.

#include<stdio.h>int main(){    char name[]="lyt";    char pass[]="lyt";    char ch[50];    sprintf(ch,"INSERT INTO info(name,pass) VALUES('%s','%s');",name,pass);    puts(ch);}

这样就构造出语句
INSERT INTO info(name,pass) VALUES(‘lyt’,’lyt’);

1 0