char sql[50]="SELECT * FROM users WHERE";
strcat(sql," user_name=");
strcat(sql,"'");
strcat(sql,"root");
strcat(sql,"'");
strcat(sql," and ");
strcat(sql,"user_passwd=");
strcat(sql,"123456");
ret = mysql_query(conn_ptr,sql);
这样查询结果是0行。
ret = mysql_query(conn_ptr,"select* from users where user_name='root'and user_passwd='123456'"); //这样就可以
但是这样写却可以查询到。
两句话不应该一模一样吗?为什么第一个不行第二个就行。
char sql[50]="SELECT * FROM users WHERE";
strcat(sql," user_name=");
strcat(sql,"'");
strcat(sql,"root");
strcat(sql,"'");
// strcat(sql," and ");
// strcat(sql,"user_passwd=");
// strcat(sql,"123456");
如果不要and后面的,也是能查到的