("java3?zhanghao=' "+a+" '&mima='"+b+" ' ");
("java3?zhanghao="+a+"&mima="+b);
这两种都成功
("select top 1 * from table1 where username=' "+a+" ' and password=' "+b+" ' ");
("select top 1 * from table1 where username="+a+" and password="+b);
而这两种第二种就不行了
能具体解释一下这两种分号的用法吗?
因为第二中的SQL语句里,程序解析时把username,password这两列的值a,b的值又当作变量了。
假设a="lisi" b="abc"
那么第二种的SQL语句就成了
select top 1 * from table1 where username=lisi and password=abc
;
而第一种就显然是
select top 1 * from table1 where username=' lisi ' and password=' abc '
不会有问题。
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息