首先也要明白一点,什么是sql注入
所谓sql注入,就是通过把sql命令插入到web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的sql命令。具体来说,它是利用现有应用程序,将(恶意的)sql命令注入到后台数据库引擎执行的能力,它可以通过在web表单中输入(恶意)sql语句得到一个存在安全漏洞的网站上的数据库,而不是按照设计者意图去执行sql语句。
1.直接参数化,那么在直接处理sql语句时,把值给传递过来的时候,我们不要直接进行赋值,而是要把这些字段的值参数化,然后再进行赋值,后续还有其他的处理方式待补充,我也需要做个验证
cmd.commandtext = @"select count(*) from userinfo where username=@username and userpwd=@userpwd"; cmd.parameters.addwithvalue("@username",txtusername.text); //sql参数化 cmd.parameters.addwithvalue("@userpwd",txtuserpwd.text); object result = cmd.executescalar();