发布网友 发布时间:2022-04-30 13:53
共2个回答
热心网友 时间:2022-04-10 11:27
因为where后面的本应该是查询的条件,但是你加入OR ‘1’ =‘1’ 后就似的查询条件总是处于成立的状态,就是永远为真值,换句话说就是整个sql语句永远为可执行状态,任何条件下都可以查询,即where语句失效,所以where后面可以看做自动省略,这就是注入式攻击,建议使用存储过程来解决注入式攻击。望采纳追问谢谢你的回答,很正确,但是 IT小宝宝比较快,所以抱歉不能给你了!
热心网友 时间:2022-04-10 12:45
条件判断,首先name=' ' 或者 1=1 只要符合其中一个进入下一个and 。下一个and 后面 1=1 又正确了,所以后面的这个where 相当于没用了。因为1=1是永远成立的