永发信息网

程序引号问题

答案:1  悬赏:20  手机版
解决时间 2021-05-16 04:46
  • 提问者网友:伴风望海
  • 2021-05-15 12:02

("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);

而这两种第二种就不行了

能具体解释一下这两种分号的用法吗?

最佳答案
  • 五星知识达人网友:我住北渡口
  • 2021-05-15 13:19

因为第二中的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 '


不会有问题。

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯